How urveebettadapur/learning-recommendation-system works
Nayatra is a personalized learning platform: learners provide their current skills and career goal, then receive skill-gap analysis, a prerequisite-aware learning path, course suggestions, and duration estimates. The documented product also includes course similarity recommendations and a data-processing pipeline. The graph shows the sampled learning-path service and ML calls; README-described recommendation/API capabilities are included, but unsampled route-to-service wiring is left out where call ownership could not be verified. The repository contains multiple frontend variants, so frontend nodes use the newer tree paths without asserting which is deployed.
Main entry points: learning_path_service.py Path service · pipeline.py ETL pipeline · learningPathService.js Path API client · course_ranking_engine.py Course ranking
Components 19
Learner experience
- Learning interface
frontend_new/src/App.jsx - Path experience
frontend_new/src/components/roadmap/LearningPath.jsx - Roadmap insights
frontend_new/src/pages/Roadmap.jsx - Path API client
frontend_new/src/services/learningPathService.js
API services
- FastAPI app
backend/main.py - Path endpoint
backend/routes/learning_path.py - Course endpoint
backend/routes/recommendation.py - Path service
backend/services/learning_path_service.py - Recommendation service
backend/services/recommendation_service.py
Learning intelligence
- Path optimizer
ml/learning_path_optimizer.py - Knowledge graph
ml/graph_engine.py - Course recommender
ml/predict.py - Course ranking
ml/course_ranking_engine.py - Skill gap detector
ml/skill_gap_detector.py
Data preparation
- ETL pipeline
etl/pipeline.py - Data extraction
etl/extract.py - Feature transformation
etl/transform.py - Processed data loading
etl/load.py
Other components
- Learner
Connections 18
- Learner → Learning interface: enters skills
- Learning interface → Path API client: requests path
- Path API client → Path endpoint: posts path request
- FastAPI app → Path endpoint: registers endpoint
- FastAPI app → Course endpoint: registers endpoint
- Path service → Path optimizer: generates path
- Path service → Knowledge graph: looks up courses
- Path service → Path optimizer: estimates duration
- Knowledge graph → Path service: returns course matches
- Path API client → Path experience: returns path data
- Path experience → Roadmap insights: presents roadmap
- Recommendation service → Course recommender: requests recommendations
- Course recommender → Course ranking: ranks courses
- Course ranking → Knowledge graph: reads course skills
- Course ranking → Skill gap detector: uses skill gaps
- ETL pipeline → Data extraction: extracts data
- ETL pipeline → Feature transformation: transforms data
- ETL pipeline → Processed data loading: loads outputs