The Course Resource Library (CRL) is a full-stack MERN application designed to manage online courses, handle video content, conduct quizzes, generate certificates, and also provide book borrowing features like a library system. It supports Admin and Student roles with secure login and role-based access.
- Signup/Login and authentication
- Browse available courses and register
- Track video content progress
- Take quizzes based on course content
- Automatically receive success email after passing
- View/download certificates (upcoming)
- Borrow books and track borrowed list
- Add/edit/delete courses
- Add course content (video links)
- Add quizzes
- View registered students per course
- View book management dashboard
- View course analytics (enrolled, completion %)
FINALPROJECT/
│
├── backend/ # Express.js backend + MongoDB
│ ├── models/
│ ├── controllers/
│ ├── routes/
│ ├── utils/
│ └── index.js
│
└── frontend/ # React frontend
├── src/
│ ├── pages/
│ ├── components/
│ ├── App.js
│ └── index.js
- Frontend: React.js, Axios, React Router, Toastify
- Backend: Node.js, Express.js
- Database: MongoDB + Mongoose
- Authentication: JWT
- Email: Nodemailer
- Certificate Generation: (Optional: jsPDF or HTML to PDF library)
- UI: Custom CSS
git clone https://github.com/yourusername/finalproject.git
cd finalprojectcd backend
npm installPORT=5000
MONGO_URI=mongodb://localhost:27017/crl
JWT_SECRET=your_jwt_secret
ADMIN_KEY=admin_secret_key
EMAIL_USER=your_email@example.com
EMAIL_PASS=your_email_passwordnpm startBackend runs at
http://localhost:5000
cd ../frontend
npm installnpm startFrontend runs at
http://localhost:3000
Email: admin@example.com
Password: admin123- Python Programming
- Full Stack Development
- Machine Learning
- Cyber Security
- Cloud Computing
- Downloadable certificates using jsPDF
- Admin upload support for PDFs/YouTube links
- Dark mode toggle
- Search/filter for courses and books