These are a set of core state management patterns I use in Flutter, most of these patterns are inspired from the Flutter framework itself.

The biggest goal of this category is to provide patterns that make code simpler, and by extension your life easier.

I encourage people to use the core patterns the framework before trying to force idioms from other ecosystems into it, it is very important to take your time and think critically.


By far the most underrated tools for state management are core features in Dart itself, I highly recommend reading through the following if you have not already:

  • Language Tour - A tour of Dart’s basic syntax.
  • dart:async - Documentation for the dart:async library
  • Iterable - The thing that make lists do the thing.

Clever usage of Streams and Iterables will save you an insane amount of work, reading and practicing them are well worth the time.

See also

Countdown Download Progress Efficient painter Nesting async builders Project Structure Safe Async