Skip to content

Hamlanreh/amazon_clone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fullstack MERN Amazon Clone Application

View Live Demo Link Here!

The Amazon clone fullstack application is an e-commerce website which was inspired by Amazon website. The frontend and backend built with (MERN Stack) with authentication capabilities and payment system implementation(Dummy payment not real payment), this application performs the most quintescential function and feature to the Amazon e-commerce online shop such as:

Features

  • JWT Authentication capabilities: Signup, login and logout functionalities with authentication and cookie management system
  • User can create, update, customize and deactivate account also (update profile picture using image management system)
  • CRUD operations on reviews of products (User can comment reviews and rate products)
  • Change password, forgot and reset password functionalities
  • Choose products and add, increase, decrease, remove or clear all from cart
  • Create an order for choosen products
  • Search for product with full product name
  • Payment system implementation using Stripe for (Dummy payment nto real payment)
  • Email transaction for forgotten password, deactivated account etc.
  • Backend REST API

Tech Stacks

Frontend Technology

React React Router Redux

Backend Technology

NodeJS Express.js MongoDB JWT Stripe Nodemailer

Cloud Storage

Cloudinary

Mail Service

Mailchimp

Deployed On

Heroku

Version Control

GitHub

Screenshots

The user interface is modelled similar to the Amazon website and i've tried to make it as mobile responsive as possible but best view on laptop or desktop. Keep in mind the primary purpose of the application is to create a fully functional e-commerce website

amazon-ecommerce-screenshot

Products list Products List page

Signup page Signup page

Login page Login page

Orders page Orders page

Cart items Selected cart products list

Checkout product list Checkout items list

Checkout Payment Checkout stripe payment section

Profile page Profile page

Database Schema

According to the current application functionalities there are 4 database collections(tables) in the schema. The User schema has all the data and password of the user

User._id --> {author} --> Review.user User._id --> {customer_order} --> Order.user

The products collections(tables) contains all the information about the different products such as name, photo, prices and ratings etc.

Product._id --> {ordered_product} --> Order.items.product Product._id --> {reviewed_product} --> Review.product

Orders collections(tables) contains all the data of the products ordered by the user and the connection is given as:

User._id --> {customer_order} --> Order.user Product._id --> {ordered_product} --> Order.items.product

The Reviews collections(tables) stores and keeps track on all CRUD operations performed on review by the users. The user makes reviews and the review is made on the a particular product and the connection is depicted as:

User._id --> {author} --> Review.user Product._id --> {reviewed_product} --> Review.product

Note

  • The database is built on MongoDB cluster
  • The application authentication management system allow automatic login with stored cookie

To run on your machine

  • Download/clone this repository to your local machine
  • Make sure you have the right nodejs version
  • Setup backend server environment with dependencies npm install
  • Setup frontend client environment with dependencies cd client/ && npm install
  • From the root directory activate client and server environment concurrently npm run dev

Test User Credentials

Things yet to do

  • Creation of new products by user and CRUD operation on product

Contribution

I consider this application as open source project, if there are possible improvements to be made to the application, issues to be resolved or help to provide pertaining to the development of this application, it will be well appreciated.

About

Mern stack Amazon clone application with full authentication and payment implementation with REST API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors