Google today revealed that “nearly half a million developers” now use its open source UI framework Flutter each month. And 2 million developers have used Flutter since version 1.0 was released in December 2018. This is the first time the company has shared user milestones for the SDK. Adoption isn’t slowing down: Flutter saw 10% month-over-month growth in March. And out of the 50,000 Flutter apps on Google Play, nearly 10,000 were uploaded in the past month.
Meant to compete with frameworks like Facebook’s React Native, Flutter began its life as an open source mobile UI framework that helps developers build native interfaces for Android and iOS. Since May, however, Flutter has let developers build desktop, embedded, mobile, and web apps from the same codebase. Developers can use Flutter on phones, wearables, tablets, desktops, laptops, televisions, and smart displays. Google calls this ambient computing — the idea that your services and software are available wherever you need them. Google wants developers to start app development not by asking “Which device am I targeting?” but “What am I going to build?” Reusing code should help startups limited by resources and let enterprises consolidate teams into shipping a single experience.
This is exactly why developers in all sorts of environments, from individuals all the way up to team leads at major corporations, need to pay attention to Flutter updates. Google also broke down the share of Flutter developers: 35% work for a startup, 26% are enterprise developers, 19% are self-employed, and 7% work for design agencies. The company added that “Flutter usage is growing fast among enterprise customers in particular” and that large companies specifically appreciate the ability to build “highly branded experiences that support multiple platforms.” Google today pointed enterprises to SyncFusion Essential Studio and its high-quality Flutter components, including charting, PDF manipulation, and barcode generation.
Google also shared more statistics about Flutter developers today:
- 60% are developing with Windows, 27% are using macOS, and 13% are using Linux.
- 78% of Flutter developers use the stable channel, 11% use beta, and 11% use either dev or master.
- The top five territories for Flutter are India, China, the United States, the EU, and Brazil.
- The most popular framework packages used in Flutter apps are http, shared_preferences, intl, meta, path_provider, and pedantic.
- The most popular third-party packages used in Flutter apps are provider, rxdart, cached_network_image, sqflite, font_awesome_flutter, and flutter_launcher_icons.
Release process and versioning changes
Ahead of Flutter’s next stable release, Google is changing its release model in hopes of improving stability and predictability. While the current process served Flutter well when it was run by a smaller team, developers have lately complained about a lack of clarity on when the release would be built, what code was in it, and poor testing for branches, which caused regressions in hotfix releases.
Google is thus adopting a branching model with a stabilization period for beta and stable releases. The team will now branch at the beginning of the month for a beta release. Roughly once a quarter, the current beta branch will be promoted to stable. Google’s infrastructure now supports testing against branches, meaning it can validate cherry-picks of critical fixes and requests. The company hopes this will “provide higher confidence in the quality and predictability of our releases, and an easier way to deliver hotfixes to the stable channel.” The branching model also brings minor changes to the way releases are versioned, which you can read about on GitHub.
Google has also aligned the Flutter and Dart release processes and channels. (Flutter apps are built using Google’s Dart programming language.) Dart now has a beta channel, and future releases will be synced (for example, Flutter beta releases will contain a Dart beta release). Developers that already ship a Flutter app based on the stable channel should test it against beta candidate releases.
Google’s first Flutter release using this new versioning model will be its next stable release. It ships next week.