Skip to content

Pravin69/mern-ecommerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Apna Shop πŸ›’

Welcome to Apna Shop, a full-stack e-commerce web application built from scratch using the MERN Stack (ReactJS, NodeJS, ExpressJS, MongoDB). Apna Shop is designed to provide users with a seamless and feature-rich online shopping experience.

Gitter

β€’ Key Features β€’ How To Use β€’ App demo β€’ Live Demo

Apna Shop Capture

Key Features

  • User Authentication :-

    • Implemented a secure session-based authentication strategy using PassportJs for enhanced user account protection.
  • Global State Management :-

    • Utilized Redux to manage the global state of the application, ensuring seamless data flow and a responsive user interface.
  • Payment Management with Stripe Webhook :-

    • Integrated a Stripe webhook to efficiently manage the payment flow on the backend, ensuring secure and reliable transactions.
  • MVC Architecture :-

    • Followed a well-organized MVC architecture for the backend, enhancing code structure and maintainability.
  • Email Notifications :-

    • Implemented email functionality to keep users informed about their orders and account updates.
  • Invoice Feature :-

    • Added an invoice feature for users upon the successful order of a product, providing a comprehensive transaction summary.
  • User Account Management :-

    • Users can easily create or update their accounts, offering a personalized and user-centric experience.
  • Product Filtering and Sorting :-

    • Users can filter products by category and brands, and also sort by price and rating for a tailored shopping experience.
  • Shopping Cart Management :-

    • Users can add or remove products from the cart, streamlining the shopping process.
  • Multiple Payment Methods :-

    • Facilitated the use of various payment methods, including cash or card during the checkout process.
  • Pagination for Product Listings :-

    • Integrated pagination functionality for product listings, simplifying navigation through a vast catalog.
  • Admin Portal :-

    • Admins can log in to edit or add products and view/update order statuses, ensuring efficient business operations.

How To Use

To clone and run this application, you'll need Git and Node.js (which comes with npm) installed on your computer. From your command line :

# Clone this repository
  git clone https://github.com/Pravin69/mern-ecommerce.git

# Go into the repository
  cd mern-ecommerce

# Install client dependencies
  cd client
  npm install

# Install server dependencies
  cd server
  npm install

# Configure environment variables by creating .env file in the server directory and copy the content of env.example file in .env file, and fill it with your own secrets.
  cp env.example .env

# Create a MongoDB database and name it 'mern_app', You can use MongoDB Atlas cloud free tier.

# Start server in a terminal
  cd server/
  npm start

# Start client in another terminal while server is running.
  cd client/
  npm run dev

App Demo

Apna Shop Capture

You may also like... πŸ™‚