How rautroshan-sys/learningplatform works
The product is an adaptive learning platform whose central cycle is diagnostic assessment, mastery estimation, prerequisite-aware learning recommendations, adaptive quizzes, and updated mastery. The React app presents learning screens and the FastAPI backend exposes assessment, path, quiz, mastery, and AI capabilities. Sampled services show BKT updates, gap detection, and Supabase persistence; the README documents the broader cycle. Route-to-service wiring and most page-to-API calls were not sampled, so those links are not inferred here.
Main entry points: main.py FastAPI app · client.py Supabase client · diagnostic_service.py Diagnostic assessment · quiz_service.py Quiz processing
Components 21
Student experience
- App router
frontend/src/App.tsx - Diagnostic screen
frontend/src/pages/Diagnostic.tsx - Quiz screen
frontend/src/pages/Quiz.tsx - Dashboard
frontend/src/pages/Dashboard.tsx - API client
frontend/src/services/api.ts
Learning API
- FastAPI app
backend/main.py - Diagnostic routes
backend/app/api/routes/diagnostic.py - Path routes
backend/app/api/routes/path.py - Quiz routes
backend/app/api/routes/quiz.py - Mastery routes
backend/app/api/routes/mastery.py - AI routes
backend/app/api/routes/ai_routes.py
Adaptive learning
- Diagnostic assessment
backend/app/services/diagnostic_service.py - Quiz processing
backend/app/services/quiz_service.py - Mastery profile
backend/app/services/mastery_service.py - BKT model
backend/app/adaptive/bkt.py - Prerequisite graph
backend/app/adaptive/dag.py - AI generation
backend/app/ai/groq_client.py
External services
- Supabase client
backend/app/db/client.py - Supabase data store
Other components
- Student
- Groq API
Connections 26
- Student → App router: uses
- App router → Diagnostic screen: routes to
- App router → Quiz screen: routes to
- App router → Dashboard: routes to
- Diagnostic screen → API client: submits assessment
- Quiz screen → API client: requests quiz
- Dashboard → API client: requests profile
- API client → FastAPI app: calls API
- FastAPI app → Diagnostic routes: dispatches
- FastAPI app → Path routes: dispatches
- FastAPI app → Quiz routes: dispatches
- FastAPI app → Mastery routes: dispatches
- FastAPI app → AI routes: dispatches
- Diagnostic assessment → BKT model: updates mastery
- Diagnostic assessment → Mastery profile: writes mastery
- Quiz processing → Prerequisite graph: detects gaps
- Quiz processing → BKT model: updates mastery
- Quiz processing → Mastery profile: reads and writes
- AI routes → AI generation: requests generation
- AI generation → Groq API: calls model
- Diagnostic assessment → Supabase client: reads questions
- Diagnostic assessment → Supabase client: stores mastery
- Quiz processing → Supabase client: reads and writes
- Mastery profile → Supabase client: reads and writes
- AI routes → Supabase client: reads grounding
- Supabase client → Supabase data store: queries data