Inspiration

We wanted to reimagine how people create and share ideas. Most tools for building games are complex and technical, so Asteria began as a way to make that process effortless, playful, and accessible. What started as a dream of turning imagination into interactive worlds became something even more meaningful: a tool that helps anyone tell stories, teach lessons, or express creativity through play. Whether it’s a teacher turning a concept into an adventure, a student group crafting a game for an event, or an artist bringing a character to life, Asteria lets imagination become reality.

The name Asteria comes from the Greek goddess who fell from the stars and became an island, transforming from something distant and celestial into something real and solid. In the same way, Asteria turns ideas that once existed only in the mind into worlds you can delve into.

What it does

Asteria transforms ideas into fully playable 2D games through natural language and creativity. Users describe their world, or upload an image, and Asteria generates a personalized game with characters, obstacles, and environments that reflect their vision. It intelligently suggests customization sliders like difficulty, theme, or learning focus, letting each user shape the experience to their purpose.

From educational games that teach through play, to interactive event platforms, to imaginative worlds built just for fun, Asteria makes it possible to design and refine games without writing a single line of code. It’s not just a generator; it’s a creative partner that turns imagination into interaction.

How we built it

We designed the interface in Figma and built the frontend with React, TypeScript, and Vite, using TailwindCSS for styling and Framer Motion for transitions. The backend was developed with FastAPI, Python, and Pygame to handle game logic and world generation. We used the Gemini API for LLM requests, which interpret user input and return structured JSON data that defines characters, environments, and gameplay elements. The frontend then renders this data into a playable 2D platformer.

Challenges we ran into

Early in development, we spent significant time experimenting with Godot but realized late that it wouldn’t integrate well with our pipeline. Transitioning to Pygame required refactoring much of our backend logic, which was a valuable learning experience. We also faced challenges structuring AI output into consistent JSON and connecting the FastAPI backend to the React frontend smoothly. It was very much a live-and-learn process.

Accomplishments that we're proud of

We’re proud of building a fully functional AI-to-game generation pipeline that connects natural language input to a playable platformer. We are really happy with how our sketches for the design turned into reality with how polished it ended up being. We also take pride in successfully integrating FastAPI, Pygame, and the Gemini API into a workflow.

What we learned

This project taught us a lot about flexibility and problem solving. We learned how to adapt quickly when our initial tools didn’t fit, and how to integrate multiple technologies like AI, Python, and frontend frameworks,into one cohesive system. We also gained experience in designing interfaces that make complex ideas feel simple, and in managing clear communication between backend and frontend development.

What's next for Asteria

Next, we want to expand Asteria’s capabilities beyond simple 2D platformers. Our goal is to make the generated games more complex and customizable, giving users more control over visuals and mechanics. We also plan to broaden the platform to support additional game genres and allow deeper in-app editing so users can refine every aspect of their worlds.

Built With

  • figma
  • framer-motion
  • github
  • languages:-python
  • pygame-apis-&-tools:-gemini-api
  • react
  • tailwindcss
  • typescript-frameworks-&-libraries:-fastapi
  • vercel
  • vite
Share this project:

Updates