Code Monkey home page Code Monkey logo

electromart-bstrap's Introduction

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)

Packages Used:

Frontend -React Vite

  • Bootstrap - UI framework
  • React Icons - for font awesome icons
  • React router dom - route management
  • React router bootstrap - bootstrap support
  • Axios - HTTP request
  • @reduxjs/toolkit - global state management
  • react-redux - react and redux binding
  • react-toastify - create and display toast notifications
  • paypal/react-paypal-js - paypal react package
  • react-helmet-async - for page titles

Backend -Node.js MongoDB

  • Mongoose - Mongodb ODM library
  • Express - node.js framework
  • Express session - middleware and optional extention of express
  • Bcrypt -password hashing middleware
  • Cors - cross origin resource sharing middleware
  • Dotenv - environment variable middleware
  • Concurrency - command concurrency
  • jsonwebtoken - JSON web token
  • cookie-parser - parses the HTTP request to extract any cookies that come with the request
  • multer - file upload middleware

Install Dependencies (frontend & backend)

npm install
cd frontend
npm install

Run


# Run frontend (:5173) & backend (:5000)
npm run dev

# Run backend only
npm run server

Build & Deploy

# Create frontend prod build
cd frontend
npm run build

Env Variables

NODE_ENV = development
PORT = 5000
MONGODB_URI = your mongodb uri
JWT_SECRET = 'abc123'
PAYPAL_CLIENT_ID = your paypal client id
PAGINATION_LIMIT = 8

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

[email protected] (Admin)
123456

[email protected] (Customer)
123456

electromart-bstrap's People

Contributors

ki11e6 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.