Skip to content

Cyanhead/grocerly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Grocerly

Get the freshest groceries at the best prices

Grocerly is an e-commerce shopping patform for groceries. A visiting user is able to do the following:

  • arrive at the home page via https://grocerly-store.netlify.app
  • search products 🔍
  • view product page for more details
  • sign up/sign in 👤
  • add products to wishlist ♥️
  • add products to cart 🛒
  • checkout 🎉

This project was built using:

Home page

image of homepage

Categories page

image of all products page

Search feature

image of all search feature

Product page

image of product page

Cart

image of cart

Wishlist

image of wishlist

How I worked on this project

My goal was to simulate a professional work environment.

How to navigate this project

Why I built the project this way

  • I didn't use a state management library like Redux on purpose. For this app simple useState and useContext are sufficient. I realized that more and more projects don't use Redux anymore since GraphQL or react-query are often used for data management.
  • styled-components is a great library for styling. It includes an auto-prefixer, uses scoped classes, and allows a seamless integration with JS.
  • My plan is to become a full-stack developer eventually. But for the beginning I focus on the frontend. That's why I decided to use an existing database provider like Firebase rather to create a custom database.

If I had more time I would change this

  • Set up continuous integration to run the tests and ESLint on every Pull Request
  • Refactor some of the code. Especially this part
  • Add end-to-end tests with Cypress.

Available Scripts

In the project directory, you can run:

yarn start

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

The page will reload if you make edits.
You will also see any lint errors in the console.