- React front-end
- Redux state management
- Unit test reporting
- Test coverage reporting
- Automated unit testing
- Automated coverage reporting
- Query pizza configurations on application initialization
- List pizza sizes for user to select
- List pizza toppings for user to select (after selecting a pizza)
- List cart
- Add pizza to cart
- Remove pizza from cart
- Display list of toggles for toppings per pizza
- Restrict number of toppings according to each pizza size (some sizes support unrestricted number of toppings)
- Cost per pizza should be displayed in cart, summing base pizza cost and toppings
- Total cost should be displayed in cart