8000 GitHub - rezapamex/Sarswati: About 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
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

About 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

Notifications You must be signed in to change notification settings

rezapamex/Sarswati

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Sarswati 🌟

Sarswati Logo
Empowering Education Through Technology

Overview

Welcome to the Sarswati repository! This project serves as the backend for an educational platform designed to facilitate learning and teaching. Built using Node.js with Express and MongoDB, Sarswati provides a robust environment for students, instructors, and administrators.

Explore our Releases to download the latest version and get started.

Features

  • User Authentication: Secure login and registration for all users.
  • Role Management: Different roles for students, instructors, and administrators.
  • Course Management: Create, update, and manage courses easily.
  • Payment Integration: Support for online payments through Razorpay.
  • Email Notifications: Automatic emails for important updates using Nodemailer.
  • OTP Verification: Generate and verify OTPs for enhanced security.

Technologies Used

Sarswati leverages a variety of technologies to provide a seamless experience:

  • Node.js: JavaScript runtime for building server-side applications.
  • Express: Fast, unopinionated web framework for Node.js.
  • MongoDB: NoSQL database for flexible data storage.
  • Mongoose: ODM library for MongoDB and Node.js.
  • Bcryptjs: Password hashing for secure authentication.
  • Cookie-parser: Middleware for handling cookies.
  • CORS: Middleware for enabling Cross-Origin Resource Sharing.
  • Dotenv: Module for loading environment variables.
  • Express-fileupload: Middleware for file uploads.
  • JWT Authentication: Secure user authentication using JSON Web Tokens.
  • Nodemailer: Module for sending emails.
  • OTP Generation and Verification: Secure OTP handling for user verification.
  • Razorpay API: Payment gateway integration for processing transactions.
  • Render: Hosting platform for deploying the application.

Installation

To set up Sarswati on your local machine, follow these steps:

  1. Clone the Repository
    Open your terminal and run:

    git clone https://github.com/rezapamex/Sarswati.git
    cd Sarswati
  2. Install Dependencies
    Use npm to install the required packages:

    npm install
  3. Set Up Environment Variables
    Create a .env file in the root directory and add the following variables:

    PORT=your_port
    MONGODB_URI=your_mongodb_uri
    JWT_SECRET=your_jwt_secret
    RAZORPAY_KEY=your_razorpay_key
    RAZORPAY_SECRET=your_razorpay_secret
  4. Run the Application
    Start the server with:

    npm start

Visit http://localhost:your_port in your browser to access the application.

Usage

Once the application is running, you can:

  • Register as a new user.
  • Log in to access your dashboard.
  • Create courses if you are an instructor.
  • Enroll in courses as a student.
  • Manage users if you are an administrator.

API Documentation

For detailed API documentation, refer to the API Docs.

Contributing

We welcome contributions! To contribute to Sarswati:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeature).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add some feature').
  5. Push to the branch (git push origin feature/YourFeature).
  6. Open a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Support

For support, please open an issue in this repository or reach out to the maintainers.

Links

  • Releases: Check out our Releases for the latest updates and downloads.
  • Documentation: For more details, visit our documentation section.

Acknowledgments

  • Thank you to all contributors and supporters of this project.
  • Special thanks to the creators of the libraries and frameworks used in this application.

Conclusion

Sarswati aims to enhance the educational experience for users through a robust backend system. Your feedback and contributions are invaluable as we continue to improve and expand this project.

Sarswati Banner
Join us in empowering education through technology!

For more updates, keep an eye on our Releases section.

About

About 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

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published
0