All Projects → ashraf-kabir → mern-ecommerce

ashraf-kabir / mern-ecommerce

Licence: MIT license
MERN Stack ecommerce site

Programming Languages

javascript
184084 projects - #8 most used programming language
CSS
56736 projects
HTML
75241 projects

Projects that are alternatives of or similar to mern-ecommerce

Registration-and-Login-using-MERN-stack
Simple Registration and Login component with MERN stack
Stars: ✭ 210 (+72.13%)
Mutual labels:  node-js, mongodb-database, express-js
Focus Budget Manager
Budget Manager application built with Vue.js, Node.js, Express.js and MongoDB
Stars: ✭ 189 (+54.92%)
Mutual labels:  node-js, express-js
express-file-upload
Node.js Express Upload/Download File Rest APIs example with Multer
Stars: ✭ 64 (-47.54%)
Mutual labels:  node-js, express-js
amazon-ivs-ecommerce-web-demo
This repository shows how you can build a compelling eCommerce experience with Amazon IVS.
Stars: ✭ 19 (-84.43%)
Mutual labels:  ecommerce, react-js
Blueprint
solid framework for building APIs and backend services
Stars: ✭ 87 (-28.69%)
Mutual labels:  node-js, express-js
Expressjs K8s
Express.js microservice with a Dockerfile, Kubernetes YAMLs and a non-root user
Stars: ✭ 148 (+21.31%)
Mutual labels:  node-js, express-js
MERN-Ecommerce
An E-commerce app built using MERN stack. It has 4 social login options and implements email verification as well. Stripe and Paypal payment gateways are implemented.
Stars: ✭ 50 (-59.02%)
Mutual labels:  ecommerce, express-js
Wechatbynode
Use the Node.js development WeChat(使用Node.js 开发微信公众号)【 博客地址:https://cnodejs.org/user/SilenceHVK 】
Stars: ✭ 642 (+426.23%)
Mutual labels:  node-js, express-js
Elfcommerce
A headless open source Ecommerce project written in ReactJS + ExpressJS
Stars: ✭ 47 (-61.48%)
Mutual labels:  ecommerce, express-js
HIMS
Hospital Information Management System create using Node Js
Stars: ✭ 41 (-66.39%)
Mutual labels:  node-js, express-js
Middleman-NPM
Middleman is an intuitive Express performance monitor for all your middleware 🎉
Stars: ✭ 13 (-89.34%)
Mutual labels:  node-js, express-js
Tinyhttp
🦄 0-legacy, tiny & fast web framework as a replacement of Express
Stars: ✭ 1,259 (+931.97%)
Mutual labels:  node-js, express-js
Node Express Postgresql Server
Basic Node with Express + PostgreSQL Server
Stars: ✭ 74 (-39.34%)
Mutual labels:  node-js, express-js
Lib4dev
Find awesome libraries and make your development fast.
Stars: ✭ 165 (+35.25%)
Mutual labels:  node-js, express-js
Node Production
Take Your Node.js Project to The Production Environment (VPS/Dedicated Server).
Stars: ✭ 35 (-71.31%)
Mutual labels:  node-js, express-js
Bootstrap3 Pug Former jade Node Express Grunt
Bootstrap 3 templated by Jade
Stars: ✭ 242 (+98.36%)
Mutual labels:  node-js, express-js
Practicalnode
Practical Node.js, 1st and 2nd Editions [Apress] 📓
Stars: ✭ 3,694 (+2927.87%)
Mutual labels:  node-js, express-js
Serverless Express
Run Node.js web applications and APIs using existing application frameworks on AWS #serverless technologies such as Lambda, API Gateway, Lambda@Edge, and ALB.
Stars: ✭ 4,265 (+3395.9%)
Mutual labels:  node-js, express-js
Online Bling
Stars: ✭ 9 (-92.62%)
Mutual labels:  ecommerce, express-js
teaching-nodejs-expressjs-framework-spring-2019-2020
Complete Node-Express Application
Stars: ✭ 16 (-86.89%)
Mutual labels:  node-js, express-js

mern-ecommerce

Frontend-> React JS

Backend-> Node JS & Express JS

Database-> MongoDB

Installation process

  1. clone the repo using this command

    git clone https://github.com/ashraf-kabir/mern-ecommerce.git
  2. install npm packages

    1. install backend packages
    cd mern-ecommerce
    npm install
    1. install frontend packages
    cd client
    npm install
  3. go to the parent folder of mern-ecommerce & create .env for connection, JWT_SECRET, BRAINTREE_MERCHANT_ID, BRAINTREE_PUBLIC_KEY and BRAINTREE_PRIVATE_KEY.

    cd mern-ecommerce
    sudo nano .env

    (ctrl+x to save & nano follow instruction there)

    sample code for backend .env
    MONGODB_URI=YOUR_MONGODB_URI
    JWT_SECRET=YOUR_JWT_SECRET
    BRAINTREE_MERCHANT_ID=YOUR_BRAINTREE_MERCHANT_ID
    BRAINTREE_PUBLIC_KEY=YOUR_BRAINTREE_PUBLIC_KEY
    BRAINTREE_PRIVATE_KEY=YOUR_BRAINTREE_PRIVATE_KEY
  4. create another .env file inside client directory for REACT_APP_API_URL.

    cd mern-ecommerce/client
    sudo nano .env
    sample code for frontend .env
    REACT_APP_API_URL=YOUR_API_URL
    Instructions:
    1. for mongodb atlas database creation follow this tutorial->https://www.youtube.com/watch?v=KKyag6t98g8
    2. you can use any random string as JWTSECRET
    3. for localhost REACT_APP_API_URL is http://localhost:5000/api but for heroku (server deployment) it will be different
    4. note: add .env on .gitignore

    5. for server deployment use secrets directly
  5. deploy this project on your local server by using this command

    cd mern-ecommerce
    npm run dev

    note: both backend & frontend server will start at once with the above command.

  6. Database Structure: (Table: columns)

    1. categories: _id, name, createdAt, updatedAt;
    2. orders: _id, status, products (Array), transaction_id, amount, address, user (Object), createdAt, updatedAt
    3. products: _id, photo (Object), sold, name, description, price, category, shipping, quantity, createdAt, updatedAt
    4. users: _id, role, history (Array), name, email, salt, hashed_password, createdAt, updatedAt

App Description:

1. user can view all products
2. user can view single product
3. user can search products and view products by category and price range
4. user can add to cart checkout products using credit card info
5. user can register & sign in
6. admin can create, edit, update & delete products
7. admin can create categories
8. admin can view ordered products
9. admin can change the status of a product (processing, shipped, delivered, etc.)
  1. Deployed on
    https://ecommerce-ak.herokuapp.com/
  2. raise a star to support me
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].