Fatness is a mobile-first web workout tracker for a 6-day PPL training plan.
- Web: React, Vite, TypeScript
- API: Node.js, Fastify, TypeScript
- Database: PostgreSQL with Prisma
- Deployment: Docker Compose for web, API, and Postgres
Copy environment defaults:
cp .env.example .envInstall dependencies:
cd api && npm install
cd ../web && npm installStart Postgres:
docker compose up -d postgresRun migrations and seed data:
cd api
npm run prisma:migrate
npm run prisma:seedRun the API:
cd api
npm run devRun the web app:
cd web
npm run devBuild and run the full stack:
docker compose up -d --buildWeb runs on http://localhost:8080.
API runs on http://localhost:3000/api/v1.