Build and Deploy a Full-Stack App with AI Coding Assistants
In this workshop we'll build the classic Snake game as a full-stack web app, end to end. A coding assistant does most of the work.
We'll:
- generate a React frontend with Lovable
- write an OpenAPI spec that the frontend and backend agree on
- let the assistant build a FastAPI backend from that spec
- add a real database and connect the frontend to the backend
- run tests, containerize with Docker Compose, deploy to AWS with infrastructure as code, and add a GitHub Actions CI/CD pipeline
No frontend, backend, or DevOps experience is required. You need general software-development sense and comfort with any programming language. The assistant fills the gaps in the areas you haven't worked in before.
Each step is driven by prompts to a coding assistant.
I use Codex, but the prompts are plain English and work with any assistant. They run equally well in Claude Code or GitHub Copilot. Cursor, Gemini CLI, and Google Antigravity all handle them too.
Links
Useful resources for this workshop:
- Codex - the coding assistant I use
- Lovable - generates the React frontend
- snake-royale - the finished app we build in this workshop
- AI Dev Tools Zoomcamp: end-to-end module - the module this workshop builds on
The app you will build
We build a multi-user Snake game with a leaderboard, a way to watch other games, and login and signup.
For the frontend, Lovable scaffolds a React app. The backend runs as a FastAPI service that serves both the API and the compiled frontend from one container, backed by a database.
We use OpenAPI spec to define the API that frontend and backend share. After we create the frontend, we generate the specs file for it, and then create the backend from it. This way the frontend and backend agree on every endpoint before either is finished.
We first start with using SQLite for local work, and then later switch to Postgres.
Tutorial pages
- Overview and setup
- Part 1: Frontend with Lovable
- Part 2: Development environment
- Part 3: Run and test the frontend
- Part 4: OpenAPI spec from the frontend
- Part 5: FastAPI backend from the spec
- Part 6: A Makefile for the project
- Part 7: Connect frontend and backend
- Part 8: Real persistence with SQLite
- Part 9: Package as one container
- Part 10: Postgres in a container
- Part 11: Docker Compose
- Part 12: Deploy to AWS with infrastructure as code
- Part 13: CI/CD with GitHub Actions
- Part 14: Delete the AWS resources
- Next steps
- Where to go from here
- Q&A: common questions
- Appendix: file inventory
Related content
AI Data Cleaning Assistant
A production-style app that automates messy CSV cleanup: upload a file, profile it, generate AI-backed cleaning steps, apply deterministic transformations, and download a cleaned …
December 15, 2025
Shipping Features From My Phone
How I merged a DataTalks.Club Wrapped feature by opening a PR from a tram stop, iterating with Copilot from my smartphone, and deploying via CI/CD.
December 17, 2025
Panacea Hospital Management System
A full-stack hospital operations platform (React + Express + MongoDB) for patient registry, appointments, medical records, and ward occupancy. Reference implementation for sensiti…
December 15, 2025