← Back to projects

Challenge
Design and build a full-stack learning platform where teachers can create courses and assignments, and students receive instant automated feedback. The system needed role-based access, a full REST API, and enough test coverage to be trustworthy.
Approach
Built a Next.js frontend backed by a Node.js/Express REST API with Prisma ORM and PostgreSQL. Implemented JWT-based authentication with separate teacher and student roles. Added Swagger API documentation, a full Jest/Supertest test suite, Chart.js dashboards for course analytics, and Zustand for client-side state management.
Key features
- Role-based auth: separate teacher and student flows
- Instant automated feedback on student submissions
- Chart.js dashboards for course analytics
- Full REST API with Swagger documentation
- Test suite with Jest and Supertest
- React Hook Form + Zod for validated forms
Stack:
Next.jsReactNode.jsExpressPrismaPostgreSQLZodJestSupertestSwaggerZustandSassReact Hook FormChart.js