How ayaz-11257/lms-frontend works
LMS Frontend is a React learning-management interface for account creation, course discovery and administration, subscription checkout, and lecture access. The main learner flow is to browse courses, inspect a course, purchase the all-courses subscription, and then access lectures; authentication and role checks gate protected routes. Admins create courses and lectures and view course, user, and payment statistics. Redux slices provide the state/action layer, with Axios-based requests represented at the API boundary. Some slice implementations and page wiring were not sampled, so uncertain links are omitted.
Main entry points: App.jsx Route application · RequireAuth.jsx Role guard · axiosInstance.js HTTP client · Checkout.jsx Subscription checkout
Components 24
App and navigation
- Route application
src/App.jsx - Navigation layout
src/Layouts/HomeLayout.jsx - Role guard
src/Components/Auth/RequireAuth.jsx - Redux store
src/Redux/store.js - HTTP client
src/Helpers/axiosInstance.js
Accounts and profiles
- Sign-in and signup
src/Pages/Signup.jsx - Profile management
src/Pages/User - Auth actions
src/Redux/Slices/AuthSlice.js
Courses and lectures
- Course discovery
src/Pages/Course/CourseList.jsx - Course description
src/Pages/Course/CourseDescription.jsx - Course card
src/Components/CourseCard.jsx - Course authoring
src/Pages/Course/CreateCourse.jsx - Lecture management
src/Pages/Dashboard - Course actions
src/Redux/Slices/CourseSlice.js - Lecture actions
src/Redux/Slices/LectureSlice.js
Subscription payments
- Subscription checkout
src/Pages/Payment/Checkout.jsx - Payment outcomes
src/Pages/Payment - Payment actions
src/Redux/Slices/RazorpaySlice.js
Administration
- Admin dashboard
src/Pages/Dashboard/AdminDashboard.jsx - Statistics actions
src/Redux/Slices/StatSlice.js
Other components
- Learner
- Administrator
- Razorpay
- LMS backend
Connections 34
- Learner → Route application: uses
- Administrator → Route application: uses
- Route application → Sign-in and signup: routes
- Route application → Course discovery: routes
- Route application → Course description: routes
- Route application → Role guard: guards routes
- Role guard → Profile management: allows roles
- Role guard → Subscription checkout: allows roles
- Role guard → Lecture management: allows roles
- Role guard → Course authoring: allows admins
- Role guard → Admin dashboard: allows admins
- Sign-in and signup → Auth actions: dispatches
- Profile management → Auth actions: dispatches
- Navigation layout → Auth actions: dispatches logout
- Route application → Navigation layout: renders pages in
- Auth actions → HTTP client: requests
- HTTP client → LMS backend: sends HTTP
- Course card → Course description: opens
- Course discovery → Course card: renders
- Course authoring → Course actions: dispatches
- Course discovery → Course actions: course data actions
- Lecture management → Lecture actions: lecture actions
- Course actions → HTTP client: requests
- Lecture actions → HTTP client: requests
- Course description → Subscription checkout: continues to purchase
- Subscription checkout → Payment actions: dispatches
- Payment actions → HTTP client: requests
- Payment actions → Razorpay: payment integration
- Subscription checkout → Razorpay: opens checkout
- Subscription checkout → Payment outcomes: navigates on outcome
- Admin dashboard → Course actions: loads and deletes courses
- Admin dashboard → Statistics actions: loads statistics
- Admin dashboard → Payment actions: loads payment records
- Statistics actions → HTTP client: requests