Repo of the Day
fastapi/full-stack-fastapi-template
Published: Jun 9, 2025
Open repository ↗Full stack, modern web application template. Using FastAPI, React, SQLModel, PostgreSQL, Docker, GitHub Actions, automatic HTTPS and more.
Summary
The Full Stack FastAPI Template is a starter repository that wires together a FastAPI backend (Python, SQLModel, PostgreSQL) with a React frontend (TypeScript, Vite, Tailwind CSS, shadcn/ui), bundled with Docker Compose for local development and FastAPI Cloud for deployment. It comes with authentication, testing, and CI/CD already configured, so a new project can be cloned and built upon rather than assembled from scratch.
What it is useful for
This template suits engineers who need to bootstrap a full-stack web app with a Python API and a modern React UI without spending time picking and integrating each piece individually. It includes a JWT-based login flow, secure password hashing, and email-based password recovery, with React Email for templates and Mailpit for catching those emails locally during development. The frontend is built into the backend application and served by FastAPI on the same domain as the API, and an automatically generated frontend client bridges the two layers. End-to-end tests use Playwright, the backend uses Pytest, and CI/CD is set up with GitHub Actions; the repo ships with two visible workflows, test-docker-compose.yml and test-backend.yml. Traefik sits in front of Docker Compose services for reverse proxy and automatic HTTPS during self-hosted deployment. A documented limitation is that the top-level README only summarizes the stack; concrete setup steps for the backend, frontend, deployment, and development are split into sub-documents such as backend/README.md, frontend/README.md, deployment.md, deployment-docker-compose.md, and development.md, so engineers should read those before running anything.
How engineers can use it
The documented starting point is the "Use this template" button on the repository page, which creates a new GitHub repository pre-populated with the code. From there, the README points engineers to development.md for the local FastAPI and Vite workflow, Docker Compose services, and .env configuration. The backend subdirectory has its own README for Python-side work, while frontend/README.md covers the React side. Deployment options are split between deployment.md (FastAPI Cloud) and deployment-docker-compose.md (self-hosted with Traefik). Because exact install commands are not in the top-level README, engineers should consult those sub-documents for the concrete steps. The included GitHub Actions workflows give a baseline CI configuration from the first commit, so teams can focus on application code rather than pipeline plumbing.