Sarswati Backend is a Node.js application built with Express and MongoDB, designed to support an educational platform with roles for students, instructors, and administrators. It includes features for user authentication, course management, payments, and more.
- User signup, login, password reset, and profile management
- Role-based access control using JWT tokens and bcrypt for secure authentication
- CRUD operations for course categories
- Display all categories and category page details
- Create, read, update, and delete courses
- Retrieve course details and display all available courses
- Update user profiles, retrieve user details, and delete user accounts
- Allow users to rate and review courses
- Calculate and display average ratings for courses
- Create, update, and delete sections and subsections within courses
- Handle payment capture and signature verification using Razorpay
- Enable users to purchase courses securely
-
Clone the repository: git clone https://github.com/roy7077/Sarswati.git
-
Install dependencies:
- npm install
- Set up environment variables:
- Create a
.env
file in the root directory - Define the required environment variables such as database connection URI, JWT secret, Razorpay API keys, etc.
- Start the server:
- node index.js or nodemon index.js
- Access the API endpoints at https://sarswati-1.onrender.com/
Contributions are welcome! Please fork the repository, make your changes, and submit a pull request. For major changes, please open an issue first to discuss the proposed changes.
This project is licensed under the MIT License - see the LICENSE file for details.