[]https://www.instagram.com/achraf._.nazha?igsh=bWZlbXFscDJvMnR1&utm_source=qr) [
](https://linkedin.com/in/Achraf Nazha)
This project is a full-stack starter matching the style in your Stitch templates (primary #c8f906, dark surfaces, bold uppercase headings).
- Node.js 18+
- MongoDB (local) or Docker
docker compose up -dcd apps/api
cp .env.example .env
npm install
npm run devcd ../web
cp .env.example .env
npm install
npm run devOpen:
- Web: http://localhost:5173
- API health: http://localhost:4000/health
The API will auto-seed an admin user on first run if these exist in apps/api/.env:
SEED_ADMIN_EMAILSEED_ADMIN_PASSWORD
POST /api/auth/registerPOST /api/auth/loginGET /api/meGET /api/summaryGET /api/programs(auth)POST /api/programs(admin)DELETE /api/programs/:id(admin)GET /api/admin/users(admin)POST /api/admin/users(admin)PUT /api/admin/users/:id(admin)DELETE /api/admin/users/:id(admin)
- Frontend stores JWT in
localStorageand sends it asAuthorization: Bearer <token>. - Tailwind theme is defined in
apps/web/tailwind.config.cjs.