https://github.com/prakharagarwal135/eduquest
A MERN-stack EdTech platform . This project allows users to create, consume, and rate educational content. It includes features such as user authentication, content management, and payment integration, providing a seamless learning experience.
https://github.com/prakharagarwal135/eduquest
edtech expressjs jwt mern-stack mongodb nodejs postman razorpay reactjs tailwindcss
Last synced: 3 months ago
JSON representation
A MERN-stack EdTech platform . This project allows users to create, consume, and rate educational content. It includes features such as user authentication, content management, and payment integration, providing a seamless learning experience.
- Host: GitHub
- URL: https://github.com/prakharagarwal135/eduquest
- Owner: PrakharAgarwal135
- Created: 2024-11-20T15:22:52.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-08T13:23:33.000Z (over 1 year ago)
- Last Synced: 2025-03-28T20:17:13.029Z (over 1 year ago)
- Topics: edtech, expressjs, jwt, mern-stack, mongodb, nodejs, postman, razorpay, reactjs, tailwindcss
- Language: JavaScript
- Homepage: https://edu-quest-theta.vercel.app/
- Size: 11.6 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
EduQuest (Major Project)
A Fully Functional EdTech Platform Empowering Users to LEARN, CREATE, EXPLORE and RATE educational content
Built with the MERN stack (MongoDB, ExpressJS, ReactJS, NodeJS), this platform aims to provide:
- A seamless and interactive learning experience for students, making education more accessible and engaging.
- Empower instructors to showcase their expertise and connect with learners across the globe.
---
Deployment:
- 🚀 **Live Demo**: Check out the live version of EduQuest here
---
EduQuest Features:
- 🔑 **User Authentication and Authorisation**: Students and Instructors can easily sign up and log in using their email and password. The platform also supports OTP verification and forgot password features for enhanced security.
- 📚 **Course Management**: Instructors can create, update, delete, and manage their courses and content. Students can browse, enrol, and rate courses.
- 💳 **Payment Integration**: Students can purchase and enrol in courses with a seamless checkout flow using Razorpay for secure payment processing.
- 📷 **Cloud-based Media Management**: EduQuest uses Cloudinary to securely store and manage all media content (images, videos, documents) for easy access and management.
---
Technologies Used:
### Frontend:
- **ReactJS**: JavaScript library for building user interfaces.
- **Tailwind CSS**: Utility-first CSS framework for custom designs.
- **Axios**: Promise-based HTTP client for making API requests.
- **Swiper**: Modern slider.
- **React Hot Toast**: For notifications in React applications.
### Backend:
- **Node.js**: JavaScript runtime for back-end development.
- **Express.js**: Minimal and flexible Node.js web application framework.
- **Mongoose**: Creates a connection between MongoDB and the Node.js (ODM).
- **JWT**: JSON Web Token for secure user authentication.
### Database:
- **MongoDB**: NoSQL database for for flexible data storage.
- **MongoDB Atlas**: Cloud-hosted version of MongoDB for managing the database.
### Others:
- **Razorpay**: Payment gateway for accepting payments.
- **Cloudinary**: Cloud-based image hosting and management for campground images.
- **Nodemailer**: Module for sending emails (e.g., for password resets or notifications).
- **Render**: Cloud platform for deploying the app's backend.
- **Vercel**: Cloud platform for deploying the app's frontend.
---
Frontend Pages:
### For Students:
- **Homepage**: This page has a brief introduction to the platform.
- **Catalog**: Display a list of courses for a selected category, course previews, ratings, and sorting options for easy browsing and enrollment.
- **Course Content**: Presents the course content for a particular course, including videos and related material.
- **Cart Checkout**: Display a summary of the selected courses, their prices, and any applied discounts or promotions.
- **Razorpay Payment Page**: This page will handle the payment process, where students can securely enter payment details and complete the transaction.
- **Enrolled Courses**: Display a list of courses the user has enrolled in, with access to course content and progress tracking.
- **Ratings and Reviews Page**: Allows students to provide feedback on enrolled courses.
- **Profile**: This page will have details about the student's account, including their name, email, and other relevant information.
- **Settings**: This page will allow the students to edit their account details, update the password and delete the account.
### For Instructors:
- **Course Creation Pages**: Allow instructors to add course details, upload content, set pricing, and publish the course for student enrollment.
- **My Courses**: Displays a list of their created courses, along with options to view, edit, or delete each course, track enrollments, and manage course content.
- **Profile**: This page will have details about the instructor's account, including their name, email, and other relevant information.
- **Settings**: This page will allow the instructors to edit their account details, update the password and delete the account.
---
Screenshots:
### 1) Home Page

### 2) Contact Page

### 3) Signup Page

### 4) Catalog Page

### 5) Viewing a Course Page

### 6) Profile Page (for both instructor and student)

### 7) Settings Page (for both instructor and student)

### 8) Add Course Page (instructor dashboard)

### 9) Add Lecture Page (instructor dashboard)

### 10) My Courses Page (instructor dashboard)

### 11) Cart Page (student dashboard)

### 12) Enrolled Courses Page (student dashboard)

### 13) Learning Environment Page (student dashboard)

### 14) Add review Page (student dashboard)

### 15) Razorpay Payment Page

### 16) Mail Templates
