Blueprint4FastAPI is a full-stack template with:
- Backend: FastAPI + SQLAlchemy + Alembic + Redis
- Frontend: React + TypeScript + OpenAPI-generated API types
- Optional desktop shell: Tauri 2 using the same React frontend
- Monolithic static serving support (frontend build copied into backend static path)
- Agent/workflow rules:
AGENTS.md - Deployment guide:
DEPLOY.md - Backend engineering rules:
src/backend/BACKEND.md - Frontend engineering rules:
src/frontend/FRONTEND.md - Backend quick guide:
src/backend/README.md - Frontend quick guide:
src/frontend/README.md
Localized documentation rule:
- Keep translated/localized docs under
notes/<locale>/.... - Mirror the original document structure by domain (
backend,frontend, etc.).
Current locale example (ko):
- Root guide:
notes/ko/README.md - Agent/workflow rules:
notes/ko/AGENTS.md - Deployment guide:
notes/ko/DEPLOY.md - Backend engineering rules:
notes/ko/backend/BACKEND.md - Frontend engineering rules:
notes/ko/frontend/FRONTEND.md - Backend test guide:
notes/ko/backend/TEST.md - Frontend test guide:
notes/ko/frontend/TEST.md
src/
backend/
frontend/
docker/
scripts/
- Initialize env files:
make init- Run backend (local development):
make backend-install
make backend-dev- Run frontend (local development):
make frontend-install
make frontend-dev- Open:
- Backend API docs:
http://localhost:8000/docs - Frontend app (Vite):
http://localhost:5173
Run make help to list the available workflow hooks.
Common targets:
make install # Install backend and frontend dependencies
make backend-dev # Run FastAPI development server
make frontend-dev # Run Vite development server
make build # Build backend environment and frontend artifacts
make test # Run backend and frontend tests
make check # Run backend lint and frontend format checks
make format # Format backend and frontend code
make ci # Run check, test, and buildDocker targets:
make docker-build
make docker-up
make docker-logs DOCKER_SERVICE=app
make docker-down
make docker-deploy
make docker-export
make docker-observability-up
make docker-observability-down- Prepare env:
make init- Build app image:
make docker-build- Start services (
app+ optional localpostgres/redisbased ondocker/.env):
make docker-up- View logs:
make docker-logs DOCKER_SERVICE=app- Stop services:
make docker-down- One-shot deploy (build + recreate + export tar):
make docker-deploy- Export app image tar:
make docker-exportExported image files are stored in docker/artifacts/.
Backend:
make backend-format
make backend-testFrontend:
make frontend-format
make frontend-buildThe browser frontend remains the default. For optional local desktop development:
cd src/frontend
npm run tauri:devOr run it from the repository root. The launcher automatically adds the standard
Rust installation path (~/.cargo/bin) when the current shell has not loaded it:
make frontend-desktop-dev