How komalharshita/devpath works
DevPath is a Flask application that helps developers choose coding projects: users provide skills, level, interest, and time; the recommendation engine scores projects, and the application presents matches with roadmaps, resources, and starter-code access. The graph also captures documented roadmap comparison and the repository’s account, admin, GitHub, bookmarking, discussion, and progress features. Some modules and route relationships are represented at subsystem level where their implementation was not sampled; the tree does not show the README’s referenced projects.json.
Main entry points: main_routes.py Main routes · app.py Flask app · data_loader.py Project data loading · admin_routes.py Admin routes
Components 26
Web application
- Flask app
src/app.py - Main routes
src/routes/main_routes.py - Data models
src/models.py - Application database
src/models.py
Project guidance
- Project data loading
src/utils/data_loader.py - Recommendation engine
src/utils/recommender.py - Learning paths
src/utils/learning_path.py - Roadmap comparison
src/utils/roadmap_comparer.py - Starter-code serving
src/utils/file_server.py - Skill progression
src/utils/skill_progression.py - Code review
src/utils/code_review.py - Portfolio analysis
src/utils/portfolio_analyzer.py
Accounts and community
- Authentication routes
src/routes/auth_routes.py - Admin routes
src/routes/admin_routes.py - GitHub integration
src/routes/github_routes.py - Bookmark routes
routes/bookmark_routes.py - Bookmark management
utils/bookmark_manager.py - Discussion routes
routes/discussion_routes.py - Discussion management
utils/discussion_manager.py - Progress routes
routes/progress_routes.py - Progress tracking
utils/progress_tracker.py
Application support
- Configuration
src/config.py - Pagination
src/utils/pagination.py - URL validation
src/utils/url_validator.py
Other components
- Learner
- GitHub
Connections 24
- Learner → Main routes: submits preferences
- Flask app → Main routes: registers routes
src/app.py - Main routes → Recommendation engine: requests matches
src/routes/main_routes.py - Recommendation engine → Project data loading: loads projects
src/utils/recommender.py - Main routes → Roadmap comparison: compares roadmaps
src/routes/main_routes.py - Main routes → Learning paths: builds learning paths
src/routes/main_routes.py - Main routes → Starter-code serving: serves starter code
src/routes/main_routes.py - Main routes → Skill progression: tracks progression
src/routes/main_routes.py - Main routes → Code review: submits reviews
src/routes/main_routes.py - Main routes → Portfolio analysis: analyzes portfolio
src/routes/main_routes.py - Main routes → Pagination: uses pagination
src/routes/main_routes.py - Project data loading → Data models: uses models
src/utils/data_loader.py - Project data loading → URL validation: validates URLs
src/utils/data_loader.py - Flask app → Data models: initializes database
src/app.py - Flask app → Configuration: loads settings
src/app.py - Flask app → Authentication routes: registers routes
src/app.py - Flask app → Admin routes: registers routes
src/app.py - Flask app → GitHub integration: registers routes
src/app.py - GitHub integration → GitHub: exchanges OAuth
src/routes/github_routes.py - Admin routes → Data models: edits projects
src/routes/admin_routes.py - Admin routes → Pagination: parses pages
src/routes/admin_routes.py - Bookmark routes → Bookmark management: manages bookmarks
routes/bookmark_routes.py - Discussion routes → Discussion management: manages threads
routes/discussion_routes.py - Progress routes → Progress tracking: updates progress
routes/progress_routes.py