Skip to content

Latest commit

 

History

History
92 lines (65 loc) · 1.84 KB

README.md

File metadata and controls

92 lines (65 loc) · 1.84 KB

Material Bread logo

eSoul

eCommerce platform built with the MERN stack & Redux.

Visit eSoul


Features

  • Full featured shopping cart
  • Product reviews and ratings
  • Top products carousel
  • Product pagination
  • Product search feature
  • User profile with orders
  • Admin product management
  • Admin user management
  • Admin Order details page
  • Mark orders as delivered option
  • Checkout process (shipping, payment method, etc)
  • PayPal / credit card integration
  • Database seeder (products & users)

Usage

ES Modules In Node

I have used ECMAScript Modules in the backend in this project. Be sure to have at least Node v14.6+.

Also, when importing a file (not a package), be sure to add .js at the end or you will get a "module not found" error.

Env Variables

Create a .env file in then root and add the following

NODE_ENV = development
PORT = 8000
MONGO_URI = your mongodb uri
JWT_SECRET = 'aSECRET'
PAYPAL_CLIENT_ID = your paypal client id

Install Dependencies

npm install
cd frontend
npm install

Run

* Run frontend (:3000) & backend (:8000)
npm run dev

* Run backend only
npm run server

Build & Deploy

* Create frontend prod build
cd frontend
npm run build

There is a Heroku postbuild script, so there's no need to manually build react frontend.

Seed Database

You can use the following commands to seed the database with some sample users and products as well as destroy all data

* Import data
node seed.js

* Destroy data
node seed.js -d

Made with ❤️ By Suket Bhola