A RESTful API for building a full-featured E-Commerce application. This API provides the backend functionality required for managing products, users, orders, reviews, wishlist, addresses, coupons and more in an E-Commerce system.
- User authentication and authorization.
- Categories management (create, read, update, delete).
- Subcategories management (create, read, update, delete).
- Brands management (create, read, update, delete).
- Reviews management (create, read, update, delete).
- Product management (create, read, update, delete).
- Wishlist management (add product, delete product, read).
- Coupons management (create, read, update, delete).
- User management (register, login, profile).
- Order processing (create, view, update) with cash or card.
- Cart functionality.
- Payment processing integration (Stripe).
- Node.js
- Express.js
- MongoDB
- Mongoose
- JWT
- sharp
- multer
- bcrypt
- Slugify
- Express-Async-Handler
- nodemailer
- Cors
- compression
- hpp
- express-rate-limit
- express-mongo-sanitize
- xss-clean
- Stripe (for payment processing)
The API is deployed with git into Cyclic. Below are the steps taken:
git init
git add -A
git commit -m "Commit message"
You can fork the app or you can git-clone the app into your local machine. Once done that, please install all the dependencies by running
$ npm install
set your env variables
$ npm run start:dev