Need help with sprites-as-a-service?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

ljvmiranda921
218 Stars 13 Forks MIT License 137 Commits 5 Opened issues

Description

Generate your personal 8-bit avatars using Cellular Automata, a mathematical model that simulates life, survival, and extinction

Services available

!
?

Need anything else?

Contributors list

# 70,924
Python
Shell
TeX
global-...
118 commits
# 101,198
whatsap...
jira
python-...
focal-l...
1 commit

Github Pages Cloud Run Frontend CI Backend CI

Try the interactive demo here :sparkles::sparkles:

Sprites-as-a-Service is an open-source web application that allows you to generate custom 8-bit sprites using Cellular Automata, particularly Conway's Game of Life. Generate a unique sprite given a text, and control extinction and survival rates. In addition, you can also access the generator via a REST API. Use it for your chat app or games!

The frontend is made with Vue.js (with Nuxt.js) whereas the backend is done using Python and FastAPI.

You can also read my creative process and motivation for building this app in my blog

Running the development server

The easiest way to run Sprites-as-a-service locally is via docker compose. First, clone this repository:

git clone [email protected]:ljvmiranda921/sprites-as-a-service.git

then build the images:

cd sprites-as-a-service
docker-compose build

This will then build two images,

sprites-backend
and
sprites-frontend
, for the backend and frontend services of the web app. You can then run them with the command:
docker-compose -d up

You should be able to see the application running at localhost:8080. Close these services using:

docker-compose down

Production server and deployment

The frontend demo application is currently deployed in my website. I first generate a static website using Nuxt's

npm run generate
, then serve it on Github pages. To see the frontend deployment procedure, I encourage you to check
.github/workflows/gh-pages.yml
.

On the other hand, the backend service is deployed in Google Cloud Run. I first build the image found in

./backend/Dockerfile
and deploy them to GCP. Check
.github/workflows/cloud-run.yml
for more information.

I highly-encourage you to use the Docker images published in this repository. You might not need the frontend component itself, but the backend can be deployed as a microservice.

docker pull docker.pkg.github.com/ljvmiranda921/sprites-as-a-service/sprites-backend:latest

Notable Implementations

  • @danielgjackson has a pure-Javascript port for Sprites-as-a-Service. From that he made Infinite Sprites! I encourage you to check it out and spend your hours looking at them!
  • @yurkth created Sprator, a GUI application that generates sprites using cellular automaton. Here, you can set a seed, base & background colors, and size!

License

The content of this project itself is licensed under the Creative Commons Attribution 4.0 license, and the underlying source code used to generate the sprites and build the website is licensed under the MIT license.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.