This is a very simple storefront application that illustrates some of the functions of LWC state managers. The application consists of a handful of components that display and alter information in a single shared state manager. None of the components communicate using properties or events - all information is shared through the state manager.
The interesting source for the application can be found in src/modules/x:
appis the top-level application componentheaderis the site's headercartis the shopping cart icon & associated textdetailsis the product picker & displayfooteris the site's footershopStateis the state manager that stores all the state for the application
This application is available in a StackBlitz playground if you'd like to explore how it works without cloning & setting up the repo.
After cloning the repo:
$ npm run dev # Get app server running
$ npm run build # Build app in production mode
$ npx serve # Serve the app (after running `npm run build`).