Counter store with sync increment / decrement / reset, async fetch action, and localStorage persistence — the three patterns the Redux migration page demonstrates, in one runnable example.
Counter
0
last bumped: never
Async action (fetch + load/error states)
idle
Counter state persists to localStorage; reload the page to see it survive.