The aim of the Flutter Favorite program is to identify packages and plugins that you should first consider when building your app. This is not a guarantee of quality or suitability to your particular situation—you should always perform your own evaluation of packages and plugins for your project.
Flutter Favorite packages have passed high quality standards using the following metrics:
- Overall package score
- Permissive license, including (but not limited to) Apache, Artistic, BSD, CC BY, MIT, MS-PL and W3C
- GitHub version tag matches the current version from pub.dev, so you can see exactly what source is in the package
- Feature completeness—and not marked as incomplete (for example, with labels like “beta” or “under construction”)
- Verified publisher
- General usability when it comes to the overview, docs, sample/example code, and API quality
- Good runtime behavior in terms of CPU and memory usage
- High quality dependencies
Flutter Ecosystem Committee
The Flutter Ecosystem Committee (FEC) is comprised of Flutter team members and Flutter community members spread across its ecosystem. One of the their jobs is to decide when a package has met the quality bar to become a Flutter Favorite.
The current committee members (ordered alphabetically by last name) are as follows:
- Pooja Bhaumik
- Hillel Coren
- Thea Flowers
- Simon Lightfoot
- Lara Martín
- Chris Sells (committee chair)
- Michael Thomsen
- Diego Velasquez
- Kyle Wang
If you’d like to nominate a package or plugin as a potential future Flutter Favorite, or would like to bring any other issues to the attention of the committee, send the committee chair an email.
Flutter Favorite usage guidelines
Flutter Favorite packages are labeled as such on pub.dev by the Flutter team. If you own a package that has been designated as a Flutter Favorite, you must adhere to the following guidelines:
- Flutter Favorite package authors may place the Flutter Favorite logo in the package’s GitHub README, on the package’s pub.dev Overview tab, and on social media as related to posts about that package.
- We encourage you to use the #FlutterFavorite hashtag in social media.
- When using the Flutter Favorite logo, the author must link to (this) Flutter Favorite landing page, to provide context for the designation.
- If a Flutter Favorite package loses its Flutter Favorite status, the author will be notified, at which point the author must immediately remove all uses of “Flutter Favorite” and the Flutter Favorite logo from the affected package.
- Don’t alter, distort, or modify the Flutter Favorite logo in any way, including displaying the logo with color variations or unapproved visual elements.
- Don’t display the Flutter Favorite logo in a manner that is misleading, unfair, defamatory, infringing, libelous, disparaging, obscene, or otherwise objectionable to Google.
You should expect the list of Flutter Favorite packages to grow and change as the ecosystem continues to thrive. The committee will continue working with package authors to increase quality, as well as consider other areas of the ecosystem that could benefit from the Flutter Favorite program, such as tools, consulting firms, and prolific Flutter contributors.
As the Flutter ecosystem grows, we’ll be looking at expanding the set of metrics, which might include the following:
- Use of the new pubspec.yaml format that clearly indicates which platforms are supported.
- Support for the latest stable version of Flutter.
- Support for AndroidX.
- Support for multiple platforms, such as web, macOS, Windows, Linux, etc.
- Integration as well as unit test coverage.
You can see the complete list of Flutter Favorite packages on pub.dev.