Full-stack patient dashboard:
- Backend: FastAPI + SQLAlchemy + PostgreSQL
- Frontend: React + Vite + TypeScript
Requires Docker Desktop or a compatible Docker engine with Compose v2.
docker compose up --buildThis starts all three services:
| Service | URL |
|---|---|
| Frontend | http://localhost:5173 |
| API | http://localhost:8000 |
| Health | http://localhost:8000/health |
On first run the backend seeds 1,000 patients automatically.
Stop everything:
docker compose downFull reset (wipes the database volume):
docker compose down -vCopy .env.example to .env and adjust as needed. The defaults work as-is for the Docker setup.
cp .env.example .envBackend — requires a running PostgreSQL instance:
pip install -r requirements.txt
DATABASE_URL=postgresql+psycopg2://postgres:postgres@localhost:5432/healthcare \
uvicorn backend.app.main:app --host 0.0.0.0 --port 8000 --reloadFrontend:
cd frontend
npm install
npm run devFrontend runs at http://localhost:5173 and expects the API at http://localhost:8000 by default (override with VITE_API_BASE_URL).
backend/ FastAPI application
frontend/ React + Vite application
docker-compose.yml All three services
.env.example Required environment variables