Local Development
This project uses FastAPI for the backend and a React SPA for the frontend. Below are the shortest paths to get running.
Prerequisites
- Python 3.11+
- Node.js 18+ (for the SPA)
- Docker (optional, for compose flows)
- gcloud CLI (for GCP deploys)
Backend
- Create a virtualenv and install deps:
python3 -m venv .venv && .venv/bin/pip install -r requirements.txt
- Copy envs and adjust:
cp env.example .env(or use.env.local)
- Run the API:
.venv/bin/uvicorn src.api.main:app --reload
- Run tests:
.venv/bin/python -m pytest tests/
Frontend
- Install and run dev server:
cd frontend && npm install && npm run dev
- For Cloud Run proxy dev, see Makefile targets
frontend-cloudrunandfrontend-cloudrun-env.
Docker & Makefile
make dev– run API dev servermake test– run pytestmake run– build + run containermake deploy– push image + deploy Cloud Run
Docs (MkDocs)
make docs:serve– live preview at http://127.0.0.1:8000make docs:build– static site output insite/make docs:deploy– build and upload to GCS docs bucket
Next Steps
- Review Architecture for data flow and components.
- See Terraform Guide for provisioning Cloud Run and related infra.