/e-commerce-api

This api projuct backend e-commerce-api try to bulid real life expression. you can also try and test this api project.

Primary LanguageJavaScript

API Design all kinds of info blow here

This Notion File is all About this project

Features

  • User can register/login.
  • Seller can register/login also verify his email.
  • User can see products and they can order the product.
  • User can see her Order status and progress.
  • User can do cancel his/hir order.
  • User can do reset her passowrd and changer the passowrd.
  • User can search product with title or category or tags.
  • User can do reviews when hir order is delivered.
  • Admin can do add user on dashboard
  • Admin can manage user orrders

Deployment

To develop this project run

  npm start
  http://localhost:3000/api/v1

To deploy this project run

  npm run dev
  http://localhost:3000/api/v1

Run Locally

Clone the project

  git clone https://github.com/muhammadranju/e-commerce-api

Go to the project directory

  cd e-commerce-api

Install dependencies

  npm install

Start the server

  npm run dev

Usage/Examples

import Component from "my-project";

function App() {
  return <Component />;
}

Environment Variables

To run this project, you will need to add the following environment variables to your .env file

BASE_URL "http://localhost:3030"

PORT 3030

MONGODB_URI "mongodb+srv://:@cluster0.jzvet.mongodb.net/?retryWrites=true&w=majority"

ACCESS_TOKEN_SECRET "***"

ACCESS_TOKEN_EXPIRY "***"

REFRESH_TOKEN_SECRET "***"

REFRESH_TOKEN_EXPIRY "***"

EMAIL "YOUR_EMAIL"

EMAIL_PASSKEY "YOUR_EMAIL_PASSKEY"

EMAIL_SERVICE "YOUR_EMAIL_SERVICE"

EMAIL_PORT "YOUR_EMAIL_PORT"

EMAIL_USERNAME "YOUR_EMAIL_USERNAME"

EMAIL_PASSWORD "YOUR_EMAIL_PASSWORD"

CLOUDINARY_CLOUD_NAME "YOUR_CLOUDINARY_CLOUD_NAME"

CLOUDINARY_API_KEY "YOUR_CLOUDINARY_API_KEY"

CLOUDINARY_API_SECRET "YOUR_CLOUDINARY_API_SECRET"

Tech Stack

Client: React.js, Next.js, TailwindCSS

Server: Node, Express, bcryptjs, cloudinary, compression, cookie-parse, express-rate-limit, jsonwebtoken, mailgen, mongoose, mongoose-aggregate-paginate-v2, nodemailer, socket.io, sslcommerz, stripe

Logo

Logo

Authors

Feedback

If you have any feedback, please reach out to us at muhamadranju@gmail.com