GithubHelp home page GithubHelp logo

abhishekbauri / e-shop Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 1.76 MB

Home Page: https://e-shop-by-akb.vercel.app/

JavaScript 95.28% HTML 0.83% CSS 3.90%
bootstrap5 expressjs mongodb mongoose nodejs payment-integration reactjs rest-api

e-shop's Introduction

E-Shop

This is a full-stack E-Commerce project built using the MERN (MongoDB, Express.js, React.js, Node.js) stack. It allows users to browse products, add them to their cart, and complete the checkout process.

Features

  • User authentication: Register, Log in, Log out and Reset Password
  • Role based routing for user and admin
  • Admin dashboard for managing products, categories, orders, and users (performed CRUD operation)
  • User dashboard for their order and order status
  • Browse through available products, view details, and add them to the cart.
  • Related products available when checking for more details of a particular product
  • Shopping cart: Manage items in the cart and remove items
  • Filter product on basis of category and price range
  • Integrated Payment Gateway (Braintree)

Technologies Used

  • React.js: JavaScript library for building user interfaces
  • Express.js: Node.js web application framework for building APIs
  • Node.js: JavaScript runtime environment for running server-side code
  • MongoDB: NoSQL database for storing data
  • Axios: Promise-based HTTP client for making API requests
  • JSON Web Tokens (JWT): For user authentication
  • bcrypt: Library for hashing passwords
  • Bootstrap: CSS framework for styling UI components
  • UI Library: Ant Design
  • Braintree: For payment gateway

Folder Structure

  • client: React.js frontend code
  • server: Node.js/Express.js backend code

Setup For Complete Project (Frontend + Backend)

  1. Clone the repository

  2. Install dependencies for Frontend

    • cd client
    • npm i
  3. Install dependencies for Backend

    • cd server
    • npm i
  4. Set up environment variables: Backend

    Create a .env file in the server directory and add set your own environment variables as shown in the sample.env file. For setting environment for payment use braintree[https://www.braintreepayments.com/sandbox]

  5. Set up environment variables: Frontend

    Create a .env file in the client directory and add REACT_APP_BASEURL=http://localhost:8000 i.e url of your server or backend

  6. To run locally

    • cd client and run npm start (for frontend)
    • cd server and run npm run start:dev (for backend)

Setup For Frontend Part Only

  1. Clone the repository

    • Only client directory is required. You can remove the server directory
  2. Install dependencies for Frontend

    • cd client
    • npm i
  3. Set up environment variables: Frontend

    Create a .env file in the client directory and add REACT_APP_BASEURL=https://e-shop-backend-akb.vercel.app i.e url of my backend api

  4. To run locally

    • cd client and run npm start

e-shop's People

Contributors

abhishekbauri 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.