Flutter Gems

A Flutter package landscape guide comprising 1500+ neatly categorized useful and popular packages!

Follow on Twitter Subscribe for Updates Contribute

Crafted with 💙 for Flutter Community

provider
👍 2044

A wrapper around InheritedWidget to make them easier to use and more reusable.

READ MORE
get
👍 1138

Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies easily with GetX.

READ MORE
flutter_bloc
👍 1011

Flutter Widgets that make it easy to implement the BLoC (Business Logic Component) design pattern. Built to be used with the bloc state management package.

READ MORE
rxdart
👍 616

RxDart is an implementation of the popular reactiveX api for asynchronous programming, leveraging the native Dart Streams api.

READ MORE
get_it
👍 559

Simple direct Service Locator that allows to decouple the interface from a concrete implementation and to access the concrete implementation from everywhere in your App"

READ MORE
bloc
👍 515

A predictable state management library that helps implement the BLoC (Business Logic Component) design pattern.

READ MORE
mobx
👍 376

MobX is a library for reactively managing the state of your applications. Use the power of observables, actions, and reactions to supercharge your Dart and Flutter apps.

READ MORE
stacked
👍 358

An architecture and widgets for an MVVM inspired architecture in Flutter. It provides common functionalities required to build a large application in a understandable manner.

READ MORE
flutter_modular
👍 312

Smart project structure with dependency injection and route management

READ MORE
states_rebuilder
👍 229

a simple yet powerful state management technique for Flutter

READ MORE
flutter_mobx
👍 195

Flutter integration for MobX. It provides a set of Observer widgets that automatically rebuild when the tracked observables change.

READ MORE
injectable
👍 193

Injectable is a convenient code generator for get_it. Inspired by Angular DI, Guice DI and inject.dart.

READ MORE
flutter_redux
👍 143

A set of utility Widgets that Provide and Connect to a Redux Store

READ MORE
riverpod
👍 137

A simple way to access state from anywhere in your application while robust and testable.

READ MORE
flutter_data Card Image
flutter_data
👍 121

The seamless way to work with persistent data models in Flutter. Inspired by Ember Data and ActiveRecord.

READ MORE
redux
👍 113

Redux is a predictable state container for Dart and Flutter apps

READ MORE
event_bus
👍 93

A simple Event Bus using Dart Streams for decoupling applications

READ MORE
scoped_model
👍 83

A Widget that passes a Reactive Model to all of it's children

READ MORE
state_notifier
👍 81

ValueNotifier, but outside Flutter and with some extra perks

READ MORE
hydrated_bloc Card Image
hydrated_bloc
👍 80

An extension to the bloc state management library which automatically persists and restores bloc states.

READ MORE
bloc_test Card Image
bloc_test
👍 67

A testing library which makes it easy to test blocs. Built to be used with the bloc state management package.

READ MORE
momentum Card Image
momentum
👍 62

A super-powerful flutter state management library inspired with MVC pattern with very flexible dependency injection.

READ MORE
flutter_riverpod
👍 62

A simple way to access state from anywhere in your application while robust and testable.

READ MORE
bloc_pattern
👍 62

Just a package with bases to deploy the BloC your code. Modules, Consumers And BLoC!

READ MORE
async_redux
👍 57

A Redux version which is easy to learn, to use, to test, and has no boilerplate. Allows for both sync and async reducers. Tailored for Flutter.

READ MORE
hooks_riverpod
👍 42

A simple way to access state from anywhere in your application while robust and testable.

READ MORE
mvc_pattern Card Image
mvc_pattern
👍 39

To develop apps using a framework following the MVC design pattern separating the app's 'interface' from its 'business logic' and from its 'data source' if any.

READ MORE
native_state
👍 35

Stores persistent state that can be restored when the app is relaunched after the process was killed.

READ MORE
fish_redux Card Image
fish_redux
👍 31

Fish Redux is an assembled flutter application framework based on Redux state management.

READ MORE
kiwi Card Image
kiwi
👍 23

A simple yet efficient IoC container for Dart and Flutter (can be coupled with the kiwi_generator package).

READ MORE
flutter_state_notifier
👍 22

Flutter bindings for state_notifier, such as StateNotifierProvider and StateNotiferBuilder

READ MORE
observable_ish
👍 21

Write elegant reactive cross-platform client side application using observable states and event emitters.

READ MORE
bloc_provider
👍 21

Provides bloc to descendant widget (O(1)), and the bloc is disposed appropriately by state which the bloc_provider holds internally.

READ MORE
redux_thunk
👍 19

A Redux.dart Middleware that allows you to dispatch functions that perform async work as actions.

READ MORE
flutter_simple_dependency_injection
👍 18

A super simple dependency injection implementation for flutter that behaves like any normal IOC container and does not rely on mirrors

READ MORE
property_change_notifier Card Image
property_change_notifier
👍 17

A drop-in replacement for ChangeNotifier for observing only certain properties of a model.

READ MORE
frideos
👍 16

An all-in-one package for state management, reactive objects, animations, effects, timed widgets etc.

READ MORE
after_init Card Image
after_init
👍 16

Adds a didInitState() lifecycle method to stateful widgets where you can safely access inherited widgets.

READ MORE
sealed_flutter_bloc Card Image
sealed_flutter_bloc
👍 15

flutter_bloc state management extension that integrates sealed_unions.

READ MORE
injector
👍 15

injector is a simple to use and lightweight dependency injection library for dart

READ MORE
rx_bloc Card Image
rx_bloc
👍 14

A Flutter package that helps implementing the BLoC (Business Logic Component) Design Pattern using the power of reactive streams.

READ MORE
flutter_rx_bloc
👍 12

Set of Flutter Widgets that help implementing the BLoC design pattern. Built to be used with the rx_bloc package.

READ MORE
redux_logging
👍 11

Redux.dart Middleware that prints the latest action & state

READ MORE
hydrated
👍 11

An automatically persisted BehaviorSubject with simple hydration for Flutter. Intended to be used with the BLoC pattern.

READ MORE
rebloc
👍 10

A state management library for Flutter that combines aspects of Redux and BLoC. Rebloc uses streams and BLoCs to compose middleware and reducers.

READ MORE
flutter_redux_navigation
👍 10

A simple reactive navigation middleware for Flutter's redux library.

READ MORE
alt_bloc
👍 10

A library that provides components for more easier and boilerplate implementation of the BLoC architecture pattern.

READ MORE
redux_epics
👍 9

A redux.dart Middleware that helps you perform side effects using Streams

READ MORE
dart_notification_center
👍 8

A wrapper for the observer pattern for Dart in the style of the iOS Notification Center.

READ MORE
redux_persist_flutter
👍 7

Redux Persist Flutter Integration with custom storage engines

READ MORE
no_bloc
👍 6

Make bloc easy again! A simple and low boilerplate implementation of the bloc state management pattern. Includes extras to work with blocs like testing, monitoring and persistence.

READ MORE
disposable_provider
👍 5

DisposableProvider is thin wrapper of Provider and it calls dispose automatically.

READ MORE
flutter_flux Card Image
flutter_flux
👍 3

Flux library for Flutter, featuring unidirectional dataflow inspired by reflux and Facebook's flux architecture.

READ MORE
flutter_bloc_pattern
👍 3

Bloc provider. Provides bloc to descendant widget (O(1)), and the bloc is disposed appropriately by state which the bloc_provider holds internally.

READ MORE