An online store app written in React with the usage of GraphQL and Apollo Client
The user should be able to
π Add products to the cart from home page (PLP), product description page (PDP), Cart modal and on the cart page itself and change their amount The user should be able to add products to the cart from home page (PLP), product description page (PDP), Cart modal and on the cart page itself and change their amount
π Add product from PLP to cart without selecting the attributes
π View selected attributes should be visible in cart modal and on the cart page
π Filter the products by category
π Change the currency
π State management and lifecycle methods in class components
π Persisting state between page reloads using web storage
π Product filtering
π Working with modal window and managing page background on modal opening
π Creating image galleries with scroll behavior
desktop.mov
Product description pages
Product listing page
Cart modal
Cart page
mobile.mov
βΉοΈ If you would like to run this project locally, first please clone the GraphQL endpoint to your machine and install dependencies with npm install
and then run the server with npm run start
command. The server will be ready at http://localhost:4000
βΉοΈ To run the client, clone the project repository and install dependencies and run it the same way. Then you can open http://localhost:3000 to view it in your browser
Links for the quick reference and the further improvements