StudyNotion is a fully functional ed-tech platform designed to provide a seamless and interactive learning experience for students while offering instructors a space to showcase their expertise and connect with learners globally. Built using the MERN stack (MongoDB, ExpressJS, ReactJS, and NodeJS), this platform combines robust architecture with an intuitive user interface.
- Features
- System Architecture
- Tech Stack
- Setup and Installation
- API Design
- Deployment
- Testing
- Future Enhancements
- Contact
- Screenshots
- Browse and search courses.
- Wishlist and purchase courses.
- Consume course content (videos, documents, etc.).
- Manage profile and account details.
- Create, update, and delete courses.
- Manage course content and pricing.
- Track performance with dashboards and insights.
- User authentication with OTP and password reset functionality.
- Razorpay payment integration for secure transactions.
- Cloud-based media management using Cloudinary.
The platform follows a client-server architecture comprising three main components:
- Built with ReactJS, delivering dynamic and responsive user interfaces.
- Communicates with the back end using RESTful APIs.
- Powered by Node.js and Express.js for scalable and secure server-side functionality.
- Provides APIs for features like user authentication, course management, and payment handling.
- MongoDB for flexible, scalable storage of course content and user data.
- Stores unstructured and semi-structured data like videos, images, and documents.
(Insert your architecture diagram here)
- Front-End: ReactJS, Tailwind CSS
- Back-End: Node.js, Express.js
- Database: MongoDB
- Authentication: JWT, Bcrypt
- Cloud Storage: Cloudinary
- Payment Gateway: Razorpay
git clone https://github.com/gyanprakash03/StudyNotion-Project
cd StudyNotion
For the backend:
cd Server
npm install
For the frontend:
cd Client
npm install
Create a .env file in the Server directory. Add the following:
MONGO_URI=<your-mongodb-uri>
JWT_SECRET=<your-jwt-secret>
CLOUDINARY_URL=<your-cloudinary-url>
RAZORPAY_KEY_ID=<your-razorpay-key-id>
RAZORPAY_KEY_SECRET=<your-razorpay-key-secret>
The platform's back end provides a comprehensive set of APIs. Key functionalities include:
- Signup, login, OTP verification, and password recovery.
- CRUD operations for courses and content.
- Secure checkout using Razorpay.
The platform is deployed in the following environment:
- Backend hosted on Render
- Frontend hosted on Vercel
- Database hosted on MongoDB Atlas
- End-to-end testing for overall functionality.
- Postman used for API testing.
- Gamification: Add badges and rewards to enhance student engagement.
- Live Sessions: Enable real-time interaction between students and instructors.
- Search Functionality: Add a global search feature for courses, instructors, and content.
For inquiries, please contact: [email protected]