7. Technology Stack
| Layer | Technology | Notes |
|---|---|---|
| Frontend | Next.js (App Router), React | SSR/SSG where useful; API routes only if needed (prefer FastAPI for auth and business logic). |
| Backend | FastAPI | Async; OpenAPI docs; easy JWT and dependency injection. |
| Database | PostgreSQL | Relational data: users, providers, services, slots, bookings, reviews. |
| Migrations | Alembic | Schema changes versioned and repeatable. |
| Auth | FastAPI + JWT + passlib | No AWS; see §8. |
| Images | Supabase Storage or Cloudinary | Cheapest option; see §9. |
| Payments | Stripe + Stripe Connect | Card payments and payouts to provider bank accounts. |
| Email (optional) | Resend / SendGrid / SMTP | Transactional emails (confirmations, password reset). |