This article has participated in the “Digitalstar Project” and won a creative gift package to challenge the creative incentive money.
preface
Along the way, dozens of articles related to Flutter state management have been written, which is an unexpected result for me. There are so many state management plugins for Flutter that you can write dozens more if you want to dig deeper. Just, write like this, be afraid is oneself not tired, see a guest all tired! πππ It is better to teach people how to fish than to teach them how to fish. This article is dedicated to a collection of the popular Flutter state management plug-ins, along with comparative analysis and rankings. You can compare the data with the official documentation to make a choice in the actual development. Post your own status management plugin and your reasons for choosing it in the comments section.
Transverse contrast parameter
The horizontal comparison is based on data, including the number of Likes, Popularity and pub Points, as well as the number of stars and contributors of Gitbub. The parameters are described as follows:
- The number of Likes reflects the degree of the Flutter developers’ Likes, which indirectly reflects the document integrity, readability and ease of use of the Flutter.
- Popularity: Reflects the Popularity of Flutter developers and the Popularity of Flutter applications. (The more people who use Flutter, the more people who will step in π£)
- Pub Points: The pub score is 130 out of 100, which is a fairly basic comprehensive evaluation of the plugin, divided into six sections as follows:
- Follow the plug-in specification (20 points)
- Document integrity (20 points)
- Cross-platform support (20 points)
- By static analysis (30 points)
- Version compatibility (20 points)
- Support for NULL Safety (20 points)
- GitHub Star number: This is known to reflect the degree of recognition by developers, a symbol of strength!
- Number of contributors: This is the community appeal of the plugin and the number of people who participate in maintenance. The more contributors, the higher the reliability of the plugin, and not slow updates or sudden maintenance interruptions (such as π£π£π£).
In order to unify the comparison scale, we made a unified comparison with the maximum value of the same dimension of the management plug-in listed in this paper, and obtained the stars according to the ratio. A total of 5 stars were set, and the corresponding relationship between the ratio and the stars is as follows:
- 0.9-1.0:5 stars
- 0.8-0.9:4 stars
- 0.6-0.8:3 stars
- 0.3-0.6:2 stars
- Below 0.3:1 star
Comparative analysis of status management plug-ins
Let’s look at the comparison data first, and then do the star rating. The five items of the status management plug-in list are as follows:
The plug-in name | Like the number | Popularity (%) | score | Number of Star | Number of contributors |
---|---|---|---|---|---|
Provider | 5207 | 100 | 130 | 3.9 k. | 60 |
Redux | 245 | 97 | 115 | 475 | 14 |
MobX | 696 | 98 | 120 | 2k | 61 |
GetX | 6406 | 99 | 120 | 4.9 k. | 140 |
BLoC | 1215 | 99 | 130 | 7.8 k. | 135 |
Event Bus | 257 | 98 | 130 | 597 | 3 |
GetIt | 1540 | 99 | 130 | 786 | 19 |
FlutterCommandβ | 43 | 72 | 130 | 28 | 3 |
Binder | 47 | 57 | 120 | 163 | 2 |
StateRebuilder | 319 | 95 | 120 | 390 | 6 |
Stacked | 850 | 97 | 110 | 543 | 62 |
Fish Redux | 52 | 92 | 100 | 7.2 k. | 34 |
flutter_meedu | 46 | 85 | 130 | 15 | 2 |
Riverpod | 1039 | 98 | 130 | 2k | 61 |
flutter_hooks | 816 | 98 | 130 | 1.9 k. | 31 |
The star rating of each parameter is as follows:
The plug-in name | Like the number | Popularity (%) | score | Number of Star | Number of contributors |
---|---|---|---|---|---|
Provider | U u u u | U u u u u | U u u u u | U u u | End to end |
Redux | u | U u u u u | U u u u | u | u |
MobX | u | U u u u u | U u u u u | u | End to end |
GetX | U u u u u | U u u u u | U u u u u | U u u | U u u u u |
BLoC | u | U u u u u | U u u u u | U u u u u | U u u u u |
Event Bus | u | U u u u u | U u u u u | u | u |
GetIt | u | U u u u u | U u u u u | u | u |
FlutterCommandβ | u | U u u | U u u u u | u | u |
Binder | u | End to end | U u u u u | u | u |
StateRebuilder | u | U u u u u | U u u u u | u | u |
Stacked | u | U u u u u | U u u u | u | End to end |
Fish Redux | u | U u u u u | U u u | U u u u u | u |
flutter_meedu | u | U u u u | U u u u u | u | u |
Riverpod | u | U u u u u | U u u u u | u | End to end |
flutter_hooks | u | U u u u u | U u u u u | u | u |
list
Based on the above star rating and data, we summed the ratio of each data, sorted from large size, resulting in scores and leaderboards as follows.
The plug-in name | ranking | The comprehensive score | The star |
---|---|---|---|
GetX | 1 | 4.54 | U u u u u |
BLoC | 2 | 4.14 | U u u u |
Provider | 3 | 3.74 | U u u u |
Fish Redux | 4 | 2.86 | U u u |
Riverpod | 5 | 2.83 | U u u |
MobX | 6 | 2.81 | U u u |
flutter_hooks | 7 | 2.57 | End to end |
GetIt | 8 | 2.47 | End to end |
Stacked | 9 | 2.46 | End to end |
Event Bus | 10 | 2.11 | End to end |
Redux | 11 | 2.05 | End to end |
StateRebuilder | 12 | 2.02 | End to end |
flutter_meedu | 13 | 1.87 | End to end |
FlutterCommand | 14 | 1.75 | End to end |
Binder | 15 | 1.53 | End to end |
How’s thatοΌ Does this fit into your mind’s Flutter status management plugin ranking? Be sure to post the status management plugin you’re using in the comments section!
I am dao Code Farmer with the same name as my wechat official account. This is a column about the introduction and practice of Flutter, providing systematic learning articles about Flutter. See the corresponding source code here: The source code of Flutter Introduction and Practical column. If you have any questions, please add me to the wechat account: island-coder.
ππ» : feel the harvest please point a praise to encourage!
π : Collect articles, easy to look back!
π¬ : Comment exchange, mutual progress!