- Design: here
- API endpoint: https://codeable-eatable-api.herokuapp.com
- Backend: here (includes insomnia json file)
Eats Inc. is developing a new idea in the food-tech industry: "Eatable". They have hired your team to build an MVP for the web app. The stakes are high and the time is short but you and your team are confident in your abilities to finish on time.
The MVP should follow these technical requirements:
- It should be built with React reusable components.
- It should use Context and Reducers to manage the global app state.
- It should include Unit tests for, at least a correct render of each component.
- It should connect to an external API to fetch and persist data.
- It should use CSS in JS for the styles using Emotion.
- It should handle token-based authentication. All pages except Login and Sign-Up should be protected.
- It should be able to handle page refreshes without losing the current state of the app. (LocalStorage or SessionStorage are both valid).
- It should handle errors showing useful messages to the user.
As a user I want to...
- Create an account with only my email and password and then complete extra info if I wish.
- Login to the app with my email and password
- Update my profile: name, phone, and address.
- See a list of products by category showing the picture, name, and price of each product.
- See the details of one product including the picture, price, description, and a button to Go Back to the previous view.
- Search a product by name.
- Filter the products by price.
- See "empty-state" messages when my search does not have any coincidences.
👩🏻💻 Happy coding! 👨💻