How sifatahammed/learnlogix-lms works
This is a course-learning platform with student and instructor experiences. Students browse and inspect courses, purchase through PayPal, gain course access, and track lecture progress; instructors create and update courses and upload media. The graph follows sampled route, controller, model, and payment code. Frontend service wiring and several backend subsystems are represented only at their tree-supported boundaries because their source was not sampled.
Main entry points: App.jsx App routes · server.js API server · order-controller.js Order processing · Course.js Course records
Components 33
Frontend
- App routes
project-frontend/src/App.jsx - Authentication UI
project-frontend/src/pages/auth/index.jsx - Instructor UI
project-frontend/src/pages/instructor/index.jsx - Course editor
project-frontend/src/pages/instructor/add-new-course.jsx - Student home
project-frontend/src/pages/student/home/index.jsx - Course catalog
project-frontend/src/pages/student/courses/index.jsx - Course details
project-frontend/src/pages/student/course-details/index.jsx - Payment return
project-frontend/src/pages/student/payment-return/index.jsx - Purchased courses
project-frontend/src/pages/student/student-courses/index.jsx - Course player
project-frontend/src/pages/student/course-progress/index.jsx - API services
project-frontend/src/services/index.js
Course management
- Instructor course routes
project-backend/routes/instructor-routes/course-routes.js - Course authoring
project-backend/controllers/instructor-controller/course-controller.js - Media routes
project-backend/routes/instructor-routes/media-routes.js - Cloudinary integration
project-backend/external-helpers/cloudinary.js
Student learning
- Student course routes
project-backend/routes/student-routes/course-routes.js - Course discovery
project-backend/controllers/student-controllers/course-controller.js - Order routes
project-backend/routes/student-routes/order-routes.js - Order processing
project-backend/controllers/student-controllers/order-controller.js - Enrollment routes
project-backend/routes/student-routes/student-courses-routes.js - Progress routes
project-backend/routes/student-routes/course-progress-routes.js - Progress tracking
project-backend/controllers/student-controllers/course-progress-controller.js
Platform services
- API server
project-backend/server.js - Auth routes
project-backend/routes/auth-routes/index.js - Auth controller
project-backend/controllers/auth-controllers/index.js - Course records
project-backend/models/Course.js - Order records
project-backend/models/Order.js - Enrollment records
project-backend/models/StudentCourses.js - Progress records
project-backend/models/CourseProgress.js
Other components
- Student
- Instructor
- PayPal
project-backend/external-helpers/paypal.js - MongoDB
Connections 38
- Student → App routes: uses
- Instructor → App routes: uses
- App routes → Authentication UI: routes
- App routes → Instructor UI: routes
- App routes → Course editor: routes
- App routes → Student home: routes
- App routes → Course catalog: routes
- App routes → Course details: routes
- App routes → Payment return: routes
- App routes → Purchased courses: routes
- App routes → Course player: routes
- API server → Auth routes: mounts
- Auth routes → Auth controller: dispatches
- API server → Instructor course routes: mounts
- Instructor course routes → Course authoring: dispatches
- API server → Media routes: mounts
- Media routes → Cloudinary integration: uploads media
- API server → Student course routes: mounts
- Student course routes → Course discovery: dispatches
- API server → Order routes: mounts
- Order routes → Order processing: dispatches
- Order processing → PayPal: creates payment
- API server → Enrollment routes: mounts
- API server → Progress routes: mounts
- Progress routes → Progress tracking: dispatches
- Course authoring → Course records: reads/writes
- Course discovery → Course records: reads
- Course discovery → Enrollment records: checks purchase
- Order processing → Order records: creates/updates
- Order processing → Enrollment records: grants access
- Order processing → Course records: updates enrollment
- Progress tracking → Enrollment records: checks access
- Progress tracking → Progress records: reads/writes
- Progress tracking → Course records: reads curriculum
- Course records → MongoDB: persists
- Order records → MongoDB: persists
- Enrollment records → MongoDB: persists
- Progress records → MongoDB: persists