Flutter, Google’s comprehensive cross-platform app development framework, has reached version 3, bringing support for Material You, Linux, macOS, and more.
Linux and macOS Flutter apps
Over the past few years, Google has steadily developed Flutter to be one of the most dynamic cross-platform development toolkits on the market. After starting to support only Android and iOS apps, the framework can also be used officially to build apps for Windows, the web, and embedded devices.
With the release of Flutter 3 today, the cross-platform addition process is complete as developers on the stable channel can now build apps for macOS as well as Linux devices and expect top-notch support. For Linux, this effort was aided by Canonical, the Ubuntu developers, who used Flutter to create core experiences within Ubuntu, including parts of the setup flow.
Meanwhile, part of the macOS support is that both Flutter and the Dart core programming language now have native support for Apple Silicon. Even better, you can ship Flutter apps in the Universal Binary format, which allows them to work effectively on both Apple Silicon and Intel-based Macs. This Apple Silicon support also extends to developers, with both Flutter and Dart SDKs now ready to run on the latest Mac generations.
You articles and dynamic themes
At last year’s Google I/O conference, shortly after the company announced the upcoming Material You Design language, the Flutter team confirmed that developers would be able to bring this third generation of Material Design into their own apps. Less than a year later, we’re now seeing the fruits of that effort, as Flutter 3 has brought a variety of new Material You tools.
Moreover, a great deal of effort has been put into creating custom themes within Flutter 3. Similar to Android 12, it is possible to automatically generate an entire application color scheme from a single starting color. More importantly, though, this capability is by no means limited to Android 12 and background-based themes. If desired, your app can use almost any color as a baseline for a custom theme.
Dart 2.17.2 Update
As is often the case, this latest release of Flutter also coincides with a new update to the Dart SDK, bringing the language to version 2.17. These improvements are available to Dart for all developers, regardless of whether you’re using Flutter.
The hallmark of Dart 2.17 is the ability for developers to extend enumerations as well as override their default functionality. This allows enums to act very much like custom written classes, if you see fit.
In an effort to reduce the standard code, Dart 2.17 also introduces the idea of ”hyperparameters” when creating a class that inherits from another class. In the common example of Flutter tools that always pass the ‘key’ parameter to the ‘Widget’ class, this should save a few lines of code and make your code much easier to read.
Top-notch Firebase support
In a survey of Flutter developers, it was found that 63% of them use Firebase in their apps. To better reflect this reality and the continued growth of Flutter, the suite of Firebase plug-ins for Flutter is now being “upgraded” to a “fully supported core part of the Firebase offering”. This means that these plugins are now included in the Firebase repo and website.
Additionally, there have been efforts to create new Flutter tools that make it easier to use Firebase in your app. For example, there is a user interface that can be easily reused for logging into an app via Firebase Authentication.
Alongside the major changes in Flutter 3, Google is sharing the Casual Game Toolkit, a new set of guides, templates, tutorials, and credits for game developers who want to use Flutter. Up until this point, the Flutter team’s focus has been on helping create apps, not games; So this is an interesting growth for the frame.
To showcase the potential of Flutter for casual mini-games, the awesome I/O Pinball game released earlier this week was built using Flutter and Firebase. For those who want to dive a little deeper into using Flutter for game development, you may also want to look into the third-party Flame game engine.
What’s next for Flutter?
Now that Flutter 3 has reached the six major platforms – Android, iOS, Web, Windows, macOS, and Linux – the big question some might ask is “What’s next?” We had the opportunity to speak with Tim Sneath, Google’s product manager for Flutter, who shared that creating support for those platforms was intended to give Flutter a solid foundation to build on.
Now that the foundation is weak, Google will continue to build on it in two main ways: improving developer productivity and expanding what Flutter can do. According to Sneath, the recently announced Flutter Casual Games Toolkit is a prime example of what the latter will look like, with more new expansions to come.
FTC: We use affiliate links to earn income. more.
Check out 9to5Google on YouTube for more news: