This is a basic eCommerce platform project that follows the MVC architecture and implements a Role-Based Access Control (RBAC) design pattern. It also includes integration with a payment gateway to facilitate online transactions.
- Role-Based Access Control (RBAC)
- Single login & signup page for User and Admin
- Authentication and Authorization mechanisms using JWT session strategy
- Middleware for protected routes
- Added CLI-based authorization for administrators
- Payment gateway integration with Webhook
- Email services (Nodemailer)
To run this project, you will need to add the following environment variables to your .env
file:
RAZORPAY_KEY_ID
RAZORPAY_KEY_SECRET
SMTP_MAIL
SMTP_PASSWORD
-
Clone the Project
git clone https://github.com/Talib8335/Ecommerce-project.git
-
Go to the Project Directory
cd ecom-api
-
Install Dependencies
npm install
-
Start the Server
nodemon
-
Generate Key to Signup as Admin
npm run ad256
-
Add Generated Key in Local-Storage
___as : Generated key