A scalable and production-ready LMS backend built using Node.js, Express, MongoDB, Stripe, Razorpay, Cloudinary, and JWT Authentication.
This system allows instructors to create courses, upload lectures, and students to purchase courses and track learning progress.
- Create & manage courses
- Upload course thumbnails & videos
- Add lectures to courses
- View enrolled students
- Browse & search courses
- Purchase courses
- Track lecture progress
- Mark course as completed
- Stripe Checkout
- Razorpay Payment Verification
- Purchase records stored in database
- JWT Authentication
- Role-based access (Student / Instructor)
- Password hashing with bcrypt
- Secure cookies
- Cloudinary video & image storage
- File uploads using Multer
- API to check server & database health
- Node.js
- Express.js
- MongoDB + Mongoose
- JWT Authentication
- Stripe & Razorpay
- Cloudinary
- Multer
- bcrypt
📈 Future Improvements
Frontend with React / Next.js
Course ratings & reviews
Live classes
Email notifications
Docker deployment
AI-based course recommendations