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:
- 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
Frontend Technology
Backend Technology
Cloud Storage
Mail Service
Deployed On
Version Control
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
Checkout stripe payment section
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
- The database is built on MongoDB cluster
- The application authentication management system allow automatic login with stored cookie
- 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
- Username: tester
- Email: tester@dev.io
- Password: test1234
- Creation of new products by user and CRUD operation on product
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.







