A full-stack e-learning platform that enables users to access and consume educational video content.
- User authentication and profile management
- Browse and purchase courses
- Video content playback with progress tracking
- Multiple video platform support (YouTube, Vimeo, Facebook, DailyMotion, etc.)
- Course progress tracking
- Video content integration from multiple platforms
- Course purchase functionality
- Progress tracking per course
- Media management system
- Frontend: React + Vite
- Backend: Node.js/Express
- Database: MongoDB
- Video Players: Support for multiple platforms
- Clone the repository
git clone https://github.com/yourusername/learnify.git- Create .env file in server
CLIENT_BASE_URL = <your-client-base-url>
CLOUDINARY_API_KEY = <your-cloudinary-api-key>
CLOUDINARY_API_SECRET = <your-cloudinary-api-secret>
CLOUDINARY_CLOUD_NAME = <your-cloudinary-cloud-name>
JWT_SECRET = <your-jwt-secret>
MONGO_URI = <your-mongo-uri>
PORT = 3000
STRIPE_PUBLISHABLE_KEY = <your-stripe-publishable-key>
STRIPE_SECRET_KEY = <your-stripe-secret-key>
WEBHOOK_ENDPOINT_SECRET = <your-webhook-endpoint-secret>
RP_ID = <your-server-id>
ORIGIN = <your-webauthn-origin>
RP_NAME = <your-webauthn-rp-name>
NODEMAILER_SECRET_KEY = <your-nodemailer-secret-key>- Install dependencies,run client and server, then view the application at http://localhost:3000
cd client && npm install && npm run build && npm run dev
cd server && npm install && npm run build && npm run dev/npm start