Full Stack E-Commerce Project using MERN

Live Link - Bookztron

Available Scripts

In the project directory, you can run:

npm start

Runs the app in the development mode.
Open http://localhost:3000 to view it in your browser.

The page will reload when you make changes.
You may also see any lint errors in the console.

Technologies used

  1. HTML
  2. CSS
  3. JavaScript
  4. React
  • Node JS, Express JS and MongoDb is used for Backend server which is deployed on Vercel.

Features:

  1. User Authentication (Signup, Login and Logout)
  2. Proper Landing page with categories and New Arrivals
  3. Product Listing Page
  4. Sort and filter products
    • Sort by Price Low to High and High to Low
    • Filter using Minimum and Maximum Price Range
    • Filter by Book Genre Categories
    • Filter by average product rating
    • Filter to include/exclude out of stock products
    • Filter products as per fast delivery availability
    • Clear all filters
  5. Wishlist Management
    • Add / remove from the wishlist
    • Add items to cart
  6. Cart Management
    • Add to cart
    • Change items quantity in cart
    • Remove from cart
    • Add to wishlist from cart
    • Apply Coupon
  7. Single Product Page
  8. Order Summary of the ordered items
  9. Custom Toast Component with 4 types - Success, Error, Warning and Information
  10. Razorpay payment Integration
  11. Orders page
  12. Search bar to search books by Book name and Author name
  13. Pagination

You are welcome to contribute to this project

  1. Create a personal fork of the project on Github.
  2. Clone the fork on your local machine. Your remote repo on Github is called origin.
  3. Add the original repository as a remote called upstream.
  4. If you created your fork a while ago be sure to pull upstream changes into your local repository.
  5. Create a new branch to work on! Branch from development branch.
  6. Implement/fix your feature, comment your code.
  7. Squash your commits into a single commit with git's interactive rebase. Create a new branch if necessary.
  8. Push your branch to your fork on Github, the remote origin.
  9. From your fork open a pull request in the correct branch. Target the project's development branch.
  10. Once the pull request is approved and merged you can pull the changes from upstream to your local repo and delete your extra branch(es).
  11. And last but not least: Always write your commit messages in the present tense. Your commit message should describe what the commit, when applied, does to the code – not what you did to the code.

You can report issues on this project using Github issue

  1. You can read more about this from Github Docs

Screenshots

Home Page

Product Listing Page

User Authentication Pages

Single Product Page

Wishlist Page

Cart Page

Razorpay integration

Orders Page