A modern monorepo with API and Web applications, built with TypeScript, Fastify, React, and Vite.
- Node.js 20+
- pnpm 9+
- Docker & Docker Compose
-
Enable pnpm and install dependencies:
corepack enable && corepack prepare pnpm@9 --activate pnpm i
-
Start infrastructure:
docker compose -f infra/docker-compose.yml up -d
-
Start development servers:
pnpm -w dev
- Web App: http://localhost:5173
- API: http://localhost:4000
- API Docs: http://localhost:4000/docs
- Health Check: http://localhost:4000/healthz
StudyFlow/
├── packages/
│ ├── api/ # Fastify API server
│ └── web/ # React + Vite web app
├── infra/ # Docker Compose infrastructure
├── .vscode/ # VS Code settings
└── .github/ # GitHub Actions CI
pnpm dev- Start all services in development modepnpm build- Build all packagespnpm lint- Lint all packagespnpm format- Format code with Prettierpnpm type-check- Run TypeScript type checking
- PostgreSQL 16 - Database (port 5432)
- Redis 7 - Cache (port 6379)
The project includes VS Code settings for:
- Auto-formatting on save
- ESLint integration
- Debug configurations for API and Web
- Recommended extensions
GitHub Actions workflow includes:
- Linting and formatting checks
- TypeScript type checking
- Build verification
- Infrastructure testing