AI-powered learning management system with OpenAI quiz generation, course browsing, progress dashboards, and Nivo charts.
MyLearning is a full e-learning platform where users browse courses, take AI-generated quizzes, and track their progress. The AI integration is the hook — OpenAI generates quiz questions and course content dynamically, so the material stays fresh.
The dashboard uses Nivo charts (bar, line, scatterplot) to visualise learning progress. There's a Prisma schema with 8+ models covering users, quizzes, questions, answers, AI-generated content, courses, user-course relationships, and a background jobs table for async processing.
The frontend is Next.js 14 with App Router, React 18, Tailwind + shadcn/ui, and a rich set of Radix UI components. SWR handles data fetching, Zod validates inputs, and React Hook Form manages the forms. Storybook documents the component library.
Docker support with multi-stage builds keeps the deployment clean. Jest + Testing Library provide the test coverage. The whole thing runs on PostgreSQL via Prisma ORM.