That said, if you have a strong background in
state management from other reactive frameworks,
you can find packages and tutorials listed on the options page.

Our example

For illustration, consider the following simple app.

The app has two separate screens: a catalog,
and a cart (represented by the MyCatalog,
and MyCart widgets, respectively). It could be a shopping app,
but you can imagine the same structure in a simple social networking
app (replace catalog for “wall” and cart for “favorites”).

The catalog screen includes a custom app bar (MyAppBar)
and a scrolling view of many list items (MyListItems).

Here’s the app visualized as a widget tree.

So we have at least 5 subclasses of Widget. Many of them need
access to state that “belongs” elsewhere. For example, each
MyListItem needs to be able to add itself to the cart.
It might also want to see whether the currently displayed item
is already in the cart.