A task management application for the Full Stack Engineer technical assessment.
- Frontend: Next.js 14 (App Router), TypeScript, TailwindCSS
- Backend: Next.js API Routes
- Database: PostgreSQL with Prisma ORM
- Auth: JWT with httpOnly cookies
- Node.js 18+
- Docker and Docker Compose
- npm or yarn
git clone <repository-url>
cd truescaletech-assessmentnpm installcp .env.example .envEdit .env with your configuration.
docker-compose up -dnpm run db:generatenpm run db:seednpm run devThe app will be available at http://localhost:3000
After seeding, you can log in with:
| Password | |
|---|---|
| alice@example.com | password123 |
| bob@example.com | password123 |
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run db:generate- Generate Prisma clientnpm run db:push- Push schema to databasenpm run db:seed- Seed database with test datanpm run db:studio- Open Prisma Studionpm run test- Run tests
├── src/
│ ├── app/
│ │ ├── api/ # API routes
│ │ ├── dashboard/ # Dashboard page
│ │ ├── login/ # Login page
│ │ └── projects/ # Project pages
│ └── lib/ # Utilities
├── prisma/
│ ├── schema.prisma # Database schema
│ └── seed.ts # Seed script
├── __tests__/ # Test files
└── docker-compose.yml # Docker configuration
POST /api/auth/login- User loginPOST /api/auth/logout- User logout
GET /api/projects- List user's projectsPOST /api/projects- Create a project
GET /api/projects/:projectId/tasks- List tasks for a projectPOST /api/projects/:projectId/tasks- Create a taskPATCH /api/tasks/:taskId- Update a taskDELETE /api/tasks/:taskId- Delete a task
Add your write-up here after completing the assessment tasks.