Interactive E-Learning Platform
Learning platform where students run Python directly in the browser via Pyodide, with interactive quizzes, automated scoring, and progress dashboards, built on a REST API covering content, authentication, progress tracking, and personalized learning paths.
Key result
In-browser Python— Pyodide execution, no backend runner
01Problem
Teaching programming online usually means either sending student code to a server to execute — which brings sandboxing, cost, and latency problems — or dropping the interactive part altogether and settling for static lessons.
02Objective
Build a learning platform where students write and run Python in the browser, with quizzes scored automatically and progress tracked, so the interactive part works without a server-side execution environment.
03Architecture
- React / Next.js
- Pyodide (in-browser Python)
- REST API
- Progress & Content Store
04Technology
- Next.js
- React
- REST APIs
- Pyodide
05Implementation
Key technical decisions
- 01Ran Python client-side through Pyodide, which removes the need for a sandboxed server-side execution environment.
- 02Designed the REST API around four concerns — content management, user authentication, progress tracking, and personalized learning paths.
- 03Kept frontend and backend state in sync so progress survives navigation and reload.
- 04Built the lesson UI from reusable, accessible React components rather than page-specific markup.
What was built
- Interactive quizzes with automated scoring and progress dashboards.
- REST API for content management, user authentication, progress tracking, and personalized learning paths.
- Lesson navigation, an embedded code editor, and progress visualizations built as reusable, accessible React components.
06Data
What the platform stores
- Lesson and course content served through the content-management endpoints
- User accounts and authentication state
- Per-student progress records backing the dashboards
- Personalized learning paths derived from progress
07Results
Pyodide
Python runs in the browser
Automated
Quiz scoring
Reusable
Accessible React components
REST
Content, auth, and progress API
10Links
No public repository for this one — happy to walk through the code on request.