This repository contains the backend for a full-featured Learning Management System (LMS) built using the MERN stack.
It provides secure authentication, payment integration, cloud storage, and multi-role access for users, instructors, and administrators.
- Secure signup and login with JWT authentication
- Course purchase using Razorpay
- Download invoice and course completion certificate
- Report bugs with screenshot or document upload (stored in AWS S3)
- Profile management with image upload (Multer + S3)
- Analytical dashboard for payments and course performance
- Create, update, and manage courses
- Manage enrolled users
- Secure OTP-based login via email (Nodemailer)
- Centralized dashboard displaying all users, instructors, courses, and payments
- Manage user and instructor accounts
- Payment history and bug report tracking
- OTP-secured admin login system
- Backend: Node.js, Express.js
- Database: MongoDB (Mongoose)
- Authentication: JWT, OTP (Nodemailer)
- Payments: Razorpay API
- File Storage: AWS S3 with Multer
- Localization: i18n
- Environment Management: dotenv
# Clone the repository
git clone https://github.com/svivek19/lms-backend.git
cd lms-backend
# Install dependencies
npm install
# Run the server (development)
npm run dev