https://github.com/mian-ali/ecommerce-app
Build Full MernStack E-CommerceApp
https://github.com/mian-ali/ecommerce-app
cart ecommerce fullstack-development mern-stack mian-ali mongodb nodejs proshop react
Last synced: 4 months ago
JSON representation
Build Full MernStack E-CommerceApp
- Host: GitHub
- URL: https://github.com/mian-ali/ecommerce-app
- Owner: mian-ali
- License: mit
- Created: 2021-11-09T19:02:42.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2025-08-05T17:42:43.000Z (5 months ago)
- Last Synced: 2025-08-05T18:11:11.325Z (5 months ago)
- Topics: cart, ecommerce, fullstack-development, mern-stack, mian-ali, mongodb, nodejs, proshop, react
- Language: JavaScript
- Homepage: https://fancy-scarf.cyclic.app/
- Size: 7.27 MB
- Stars: 60
- Watchers: 3
- Forks: 25
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# ProShop MernStack web Application `New version soon`
> eCommerce platform built with the MERN stack & Redux.
## Live Preview Project
- Production Link Change due to Heroku Free tire closed move Heroku to cyclic.sh
[Demo Project](https://fancy-scarf.cyclic.app/)
## 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 a delivered option
- Checkout process (shipping, payment method, etc)
- PayPal / credit card integration
- Database seeder (products & users)
## Usage
### ES Modules in Node
We use ECMAScript Modules in the backend of this project. Ensure you have at least Node v14.6 or higher; otherwise, you will need to add the "--experimental-modules" flag.
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
You can also install and setup Babel if you would like
### Env Variables
Create a .env file in then root and add the following
```
NODE_ENV = development
PORT = 5000
MONGO_URI = your mongodb uri
JWT_SECRET = 'abc123'
PAYPAL_CLIENT_ID = your paypal client id
```
### Install Dependencies (frontend & backend)
```
npm install
cd frontend
npm install
```
### Run
```
# Run frontend (:3000) & backend (:5000)
npm run dev
# Run backend only
npm run server
```
## Build & Deploy
```
# Create frontend prod build
cd frontend
npm run build
```
There is a Heroku post-build script, so if you push to Heroku, no need to build manually for deployment to Heroku
### 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
npm run data: import
# Destroy data
npm run data: destroy
```
```
Sample User Logins
admin@example.com (Admin)
123456
ali@example.com (Customer)
123456
```
[Vist App](https://aliahmadshop.herokuapp.com/register?redirect=/)