Edemy LMS is a full-stack learning management system (LMS) that provides educators and students with a seamless e-learning experience. Built using modern web technologies, it includes user authentication, course management, video streaming, and progress tracking.
- React (via Vite) β‘
- React Router DOM for navigation
- React Toastify for notifications
- Framer Motion for animations
- Quill for rich text editing
- Axios for API requests
- RC Progress for progress tracking
- React YouTube for video embedding
- Clerk Authentication for user management
- Node.js & Express.js π
- MongoDB & Mongoose for database
- Cloudinary for media storage
- Multer for file uploads
- Stripe for payment processing
- Cors for cross-origin requests
- Dotenv for environment variables
- Nodemon for development
π¦ client
βββ π src
β βββ π assets
β βββ π components
β β βββ π educator
β β β βββ Footer.jsx
β β β βββ Navbar.jsx
β β β βββ Sidebar.jsx
β β βββ π student
β β β βββ Logger.jsx
β βββ π context
β β βββ AppContext.jsx
β βββ π pages
β β βββ π educator
β β β βββ AddCourse.jsx
β β β βββ Dashboard.jsx
β β β βββ Educator.jsx
β β β βββ MyCourses.jsx
β β β βββ StudentsEnrolled.jsx
β β βββ π student
β β β βββ CourseDetails.jsx
β β β βββ CoursesList.jsx
β β β βββ Home.jsx
β β β βββ MyEnrollMents.jsx
β β β βββ Player.jsx
β β βββ App.jsx
β β βββ index.css
β β βββ main.jsx
βββ π .env
βββ π .gitignore
βββ π package.json
βββ π tailwind.config.js
βββ π vite.config.js
π¦ server
βββ π configs
β βββ cloudinary.js
β βββ mongodb.js
β βββ multer.js
βββ π controllers
β βββ courseController.js
β βββ educatorController.js
β βββ userController.js
β βββ webhooks.js
βββ π middlewares
β βββ authMiddleware.js
βββ π models
β βββ Course.js
β βββ CourseProgress.js
β βββ Purchase.js
β βββ User.js
βββ π routes
β βββ courseRoute.js
β βββ educatorRoutes.js
β βββ userRoutes.js
βββ π .env
βββ π .gitignore
βββ π package.json
βββ π server.js
βββ π vercel.json
β
User Authentication (Signup, Login, Clerk Integration)
β
Course Management (Add, Edit, Delete, Enroll)
β
Video Streaming (Embedded YouTube player)
β
Progress Tracking (Course Completion)
β
Educator Dashboard (Monitor students)
β
Secure Payments (Stripe integration)
β
Responsive Design (Mobile-friendly UI)
Page | Screenshot |
---|---|
Home Page | ![]() |
Course Page | ![]() |
My Enrollments | ![]() |
Player Page | ![]() |
Educator Dashboard | ![]() |
Add Course | ![]() |
My Courses | ![]() |
Enrolled Students | ![]() |
git clone https://github.com/Gyanthakur/Edemy-LMS.git
cd edemy-lms
cd client
npm install
npm run dev
cd server
npm install
npm start
Create a .env
file in both client/
and server/
directories and add required credentials (MongoDB, Cloudinary, Clerk, Stripe, etc.).
This project is set up for deployment on Vercel.
cd server
vercel --prod
cd client
vercel --prod
This project is licensed under the MIT License.
π€ Gyan Pratap Singh β Developer & Maintainer
π§ Contact: gps.96169@gmail.com
π GitHub: @gyanthakur
- Name: Gyan Pratap Singh
- Email: gps.96169@gmail.com
- GitHub: Gyanthakur
- Portfolio: Gyan's Portfolio
Give a β if you like this project!
Made with β€οΈ by Gyan Pratap Singh
If you like this project, don't forget to leave a β Star on GitHub! π