Technical Docs - LearnX LMS¶
1. Architecture Overview (AWS)¶
LearnX is a role-based Learning Management System (LMS) connecting Instructors and Students through a secure, scalable web platform. It follows a modular MERN stack architecture for seamless integration and deployment.

2. Authentication Flow¶
Authentication ensures that only valid Instructors and Students can access LearnX. Users log in or sign up using email and password.
flowchart TD
A[Open Login Page] --> B[Enter Email & Password]
B --> D[Verify in Database]
D -->|Valid| E[Generate JWT Token]
D -->|Invalid| F[Show Error Message]
E --> G{User Role}
G -->|Instructor| H[Redirect to Instructor Dashboard]
G -->|Student| I[Redirect to Student Dashboard]
Purpose:
- Secure user login
- Prevent unauthorized access
3. Authorization Flow¶
After login, the system checks the user’s role and grants access accordingly. Instructors can manage courses, while students can browse, enroll, and watch lessons.
flowchart TD
A[Login Successful] --> B[Check Role]
B -->|Instructor| C[Instructor Dashboard]
C --> D[Create / Edit / Delete Courses & Modules]
B -->|Student| F[Student Dashboard]
F --> G[Browse & Enroll Courses]
F --> H[Watch Lessons]
4. Tech Stack¶
| Layer | Logo | Technology | Version |
|---|---|---|---|
| Programming Language | JavaScript | ES14 | |
| Frontend Library | React | 19.2.0 | |
| CSS Framework | Tailwind CSS | 4.1.17 | |
| Build Tool | Vite | 7.2.2 | |
| Runtime Environment | Node.js | 22.12.0 | |
| Backend Framework | Express | 5.1.0 | |
| Database | MongoDB | 8.0 | |
| Media Storage | Cloudinary | 1.45.0 | |
| Authentication | JWT | 9.0.2 | |
| Mobile Experience | React PWA | Manifest V3 | |
| Cloud Hosting | AWS | Latest | |
| Version Control | GitHub | Latest |
5. Conclusion¶
LearnX LMS uses secure authentication and role-based authorization to provide:
- Clear separation of Instructor and Student views
- Safe and scalable system
- Ready for future features like progress tracking and payments