Full-stack coding education platform with live practice, quizzes, and structured learning paths.
dicodingschool is a coding learning platform inspired by modern educational websites, designed to help users learn programming through courses, lessons, quizzes, and hands-on coding directly in the browser.
Integrated Monaco code editor for in-browser coding practice
Structured courses, lessons, and quizzes
User dashboard with learning progress tracking
Admin panel for managing courses, lessons, and quizzes
Role-based access control for student and admin workflows
Metrics Snapshot
Editor
Monaco
Auth
JWT + Cookies
Learning
Courses + Quizzes
Access
RBAC
Architecture
Frontend
Next.js and React power the learning UI, dashboard flows, and lesson pages with responsive Tailwind CSS styling and TypeScript safety.
Backend
Server-side application logic handles authentication, protected learning flows, quiz operations, and admin management with secure JWT sessions.
Database
MongoDB stores users, courses, lessons, quiz progress, and admin-managed content in a flexible document model.
Deployment
Production deployment is optimized for a full-stack Next.js application with secure cookie handling and browser-based editor performance.
Case Study
Problem
Most beginner coding platforms either lack structured progression or do not give learners a practical environment to write and test code while learning.
Solution
Built a full-stack learning platform that combines guided lessons, quizzes, and a Monaco-powered coding workspace inside one cohesive product.
Challenge
Balancing secure authentication, role-based content management, and a smooth in-browser coding experience without breaking the learning flow.
Impact
Delivered a W3Schools-inspired learning experience with interactive practice, admin-driven content management, and a clearer path from beginner lessons to hands-on coding.