A modern, full-stack Learning Management System for educators and students.
Build, teach, learn, and grow with Edemy!
-
👨🎓 Student Portal
- Browse and enroll in courses
- Watch video lectures (with free previews)
- Track course and lecture completion
- View course details, ratings, and testimonials
-
👩🏫 Educator Portal
- Create and manage courses, chapters, and lectures
- Upload course thumbnails and video content
- View enrolled students and earnings
-
🔐 Authentication
- Secure login/signup with Clerk
- Role-based access for students and educators
-
💳 Payments
- Integration with Razorpay for course purchases
-
📱 Responsive UI
- Built with Tailwind CSS for a modern, mobile-friendly experience
-
Frontend:
- React
- Vite
- Tailwind CSS
-
Backend:
- Node.js
- Express.js
-
Database:
- MongoDB
-
Authentication:
- Clerk
- Node.js (v16+)
- MongoDB instance (local or cloud)
- Clerk account (for authentication)
- Cloudinary account (for file uploads)
- Razorpay account (for payments)
git clone https://github.com/Sneh0510/LMS.git
cd LMS
cd client
npm install
cd ../server
npm install
Create .env
files in both client/
and server/
directories.
server/.env
MONGODB_URI = YOUR_MONGODB_URI
CLERK_WEBHOOK_SECRET = YOUR_CLERK_WEBHOOK_SECRET
CLERK_PUBLISHABLE_KEY = YOUR_CLERK_PUBLISHABLE_KEY
CLERK_SECRET_KEY = YOUR_CLERK_SECRET_KEY
CLOUDINARY_NAME = YOUR_CLOUDINARY_NAME
CLOUDINARY_API_KEY = YOUR_CLOUDINARY_API_KEY
CLOUDINARY_SECRET_KEY = YOUR_CLOUDINARY_SECRET_KEY
RAZORPAY_KEY_ID = YOUR_RAZORPAY_KEY_ID
RAZORPAY_KEY_SECRET = YOUR_RAZORPAY_KEY_SECRET
CURRENCY= YOUR_CURRENCY
RAZORPAY_WEBHOOK_SECRET = YOUR_RAZORPAY_WEBHOOK_SECRET
client/.env
VITE_CLERK_PUBLISHABLE_KEY = YOUR_VITE_CLERK_PUBLISHABLE_KEY
VITE_CURRENCY = YOUR_VITE_CURRENCY
VITE_BACKEND_URL = http://localhost:5000
-
Backend:
cd server npm run server
-
Frontend:
cd client npm run dev
Visit http://localhost:5173 to view the app.
- Ready for deployment on Vercel (see
vercel.json
in bothclient/
andserver/
). - Configure environment variables in your deployment dashboard.
This project is licensed under the MIT License.
Made with ❤️ by Sneh Yadav