Skip to content

E-commerce store that leverages APIs provided by fakestoreapi.com. πŸ›’πŸ›

Notifications You must be signed in to change notification settings

pieroguerrero/shopping-cart

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Shoppy

Ecommerce store where fashion is taken to the next level. Live demo here.

Table of Contents

General Information

  • The objective of the project is to provide a template for future developments that may consume third party APIs.

Technologies and Techniques used

Planning and Design:

  • Since there is only one resource in the project, it was developmet partially with Scrum. The duration was 1 month splited in 2-week sprints.
  • The planning was done with the User Story Mapping technique, you can find the MVP map here.
  • The Wireframes implemented and to be on this project were build in Figma and can be found here.
  • The Entity Relationship Diagram (ERD) can be found here.
  • The internal project architecture was implemented following the concepts of the CLEAN Architecture.
  • Overal code documentation was done leveraging JSDocs.

Front-end:

Back-end:

  • This web app is consumming a third party open-source API called Fake Store API. It provides products for Ecommerce stores.
  • The API calls are performed with the Fetch API.
  • Part of the data provided from API was stored in case the Fake Store API goes down or out of service.

Testing:

  • Unit testing was done.
  • Test coverage is 25% and is increasing using Jest and react-testing-library is being used.
  • While testing, the project was run using the Chrome's Development Tools "Fast 3G" and "No Caching" options. So the app is ready for slow internet connections.

Features

  • View Landing Page βœ”
  • Search product by Category and by Name βœ”
  • View Product details βœ”
  • Add Product to the Shopping Cart βœ”
  • View and Interact with the Shopping Cart βœ”
  • View and Interact with the Check-out page βœ”
  • Sign-up and Logging πŸ”œ
  • Perform Check-out πŸ”œ
  • Follow-up on order delivery πŸ”œ
  • Provide feedback to the product πŸ”œ

Screenshots

Click on the image to enlarge.

Landing Page Landing Page responsive Store
Landing Page Landing Page Store

Setup

Clone this project by doing:

$ git clone https://github.com/pieroguerrero/shopping-cart.git

Then go to the folder you cloned the code and execure:

$ npm install

WARNING: If you are going to use other libraries to achieve other purposes be carefull and remove the caret (^) prefix that the dependency versions have.

Project Status

Project is: in progress

Room for Improvement

There are always room for improvement, in this project so far the thinkgs that can be improved are:

  • Move the Back-end to work with its own API services.
  • More Unit testing coverage.
  • Use Redux instead of the React Context API.