# Local Development ## Prerequisites - Node.js >= 18 - pnpm >= 8 ## Setup ```bash # Clone the repository git clone cd kooltab # Install dependencies pnpm install # Copy environment variables cp .env.example apps/api/.env # Generate Prisma client cd apps/api pnpm db:generate # Run migrations pnpm db:migrate # Seed demo data pnpm db:seed cd ../.. ``` ## Running ```bash # Start both API and Dashboard pnpm dev ``` Or individually: ```bash cd apps/api && pnpm dev cd apps/dashboard && pnpm dev ``` ## Database Commands ```bash pnpm db:generate # Generate Prisma client pnpm db:migrate # Run migrations pnpm db:seed # Seed demo data pnpm db:reset # Reset database and re-seed ``` ## Environment Variables ### API (`apps/api/.env`) - `DATABASE_URL` - SQLite path (default: `file:./dev.db`) - `JWT_SECRET` - JWT signing secret - `JWT_REFRESH_SECRET` - Refresh token secret - `PORT` - API port (default: 3001) - `CORS_ORIGIN` - Allowed CORS origin (default: http://localhost:3000) ### Dashboard - `NEXT_PUBLIC_API_URL` - API base URL (default: http://localhost:3001/api/v1)