A full stack web application that acts as a portal for learners and educators. The educators can upload videos for their courses. The learners can watch these courses once they have brought the subscription.
- Authentication
- Authorization
- MongoDB Integration
- Payment Integration
- Course Upload/Delete
- Admin Dashboard
- Monthly Subscription Model
- Add to Playlist
- @chakra-ui/react
- axios
- chart.js
- react-chartjs-2
- protected-route-react
- react-router-dom
- react-hot-toast
- react-icons
- react-redux
- @reduxjs/toolkit
- bcrypt
- cloudinary
- cookie-parser
- cors
- datauri
- dotenv
- express
- jsonwebtoken
- mongoose
- multer
- node-cron
- nodemailer
- razorpay
- validator
To run this project, you will need to add the following environment variables to your .env file in config folder of backend.
PORT
MONGO_URI
JWT_SECRET
FRONTEND_URL
SMTP_HOST
- Mail Service Host
SMTP_PORT
SMTP_USER
SMTP_PASS
CLOUDINARY_CLIENT_NAME
CLOUDINARY_CLIENT_API
CLOUDINARY_CLIENT_SECRET
PLAN_ID
- RazorPay Plan Id
RAZORPAY_API_KEY
RAZORPAY_API_SECRET
REFUND_DAYS
MY_MAIL
- Clone or download the repository
- Create a .env file in config folder of backend and add the necessary environment variables.
- Install the necessary dependencies using your package manager in frontend and backend.
- Run the backend and frontend