Time to read: 15 min

Flutter: A Success Story

Flutter: A Success Story

The cross-platform framework Flutter emerged in 2017. Since then, it has become one of the most popular tools for mobile app development. At Friflex, we have been working with Flutter since its first release, closely following its evolution and hosting an annual major conference on cross-platform development — CrossConf. In this article, we revisit the history of the framework.

What is Flutter?

Flutter is an open-source framework that allows you to create mobile applications for Android and iOS, web applications, as well as desktop applications for Windows, macOS, and Linux. The framework is developed and maintained by Google.

Google does not have an official version of the origin of the framework's name. It might refer to The Beatles' song "Paperback Writer," which includes the line "And if you read this, then I'll be flutterin' by." Alternatively, it could simply be a name suggested by one of the developers that everyone liked.

In English, "to flutter" means "to fly lightly" or "to tremble," reflecting the main idea of the framework — fast and smooth app performance thanks to animated user interfaces.

How Flutter Evolved

2015: Google’s Secret Project

Cross-platform frameworks already existed in 2015, but React Native was not suitable for projects with heavy and complex graphics and animations. QT Mobile was not popular, and Ionic and PhoneGap used web technologies for app visualization, not utilizing native components. This approach significantly reduced performance.

Google aimed to find a way to develop beautiful apps that would work seamlessly on both iOS and Android. The company quickly moved from theory to practice and launched a secret project under the code name Sky.

The project team released the Sky SDK and aimed for high speed and level of web integration. Developers planned that Sky could deliver graphics at 120 frames per second, even though smartphone displays at the time could only handle up to 60 frames per second.

Developers showcased an app that rendered a frame in 1.2 milliseconds, while other apps required 8 milliseconds.

2017: Flutter Steps into the Light

In 2017, the alpha version of Flutter was released, still under the name Sky. It worked only on Android and was inspired by the Skia engine. Skia's feature is that it abstracts away from platform-specific graphics APIs, allowing rendering complex UI elements and any 2D scenes at 60 frames per second.

Also in 2017, the first commercial product built with Flutter was released — the app for the Broadway musical "Hamilton." According to the team, the framework allowed them to develop the app in three months.

The app allowed users to view photos and videos, use Hamilton-themed filters, participate in ticket lotteries, buy branded merchandise, and sing karaoke to songs from the musical.

"Hamilton" fans loved the app, which is still available on Android and iOS.

2018: Flutter 1.0

In 2018, the first stable version of the framework — Flutter 1.0 — was released. One of the key features of the release was the speed of loading and running applications. Developers increased it by integrating the Skia 2D graphics engine.

Flutter 1.0 also introduced the famous hot reload feature. This function automatically updates the app in the browser when changes are saved in the source code, allowing developers to quickly see the results of their changes without manually reloading the page.

Open-source software allows the use, modification, and distribution of code in other programs or applications, making it easier for developers to understand how the code works when they have it in front of them.

2019: More Platforms

Flutter 1.12 was the fifth stable release after version 1.0, featuring 1,905 pull requests from 188 developers.

The team added beta support for web technologies and stable APIs for integration with Java, Kotlin, Objective-C, and Swift. The Add-to-App feature enabled Flutter integration into native iOS and Android apps.

That same year, at Google I/O, The New York Times presented KENKEN — one of the most popular games on Flutter, supporting both mobile and web platforms.

The user interface of the mobile game KENKEN featured various buttons on the first screen such as play, description, settings, and continue game, and on the second screen, buttons with game board sizes from 3x3 to 9x9, and a get more puzzles button also on the first screen.

2021: Cross-Platform and Monetization

In 2021, Google expanded Flutter’s capabilities as a cross-platform framework. Version 2.8 supported six platforms: iOS, Android, web, macOS, Windows, and Linux.

The release introduced the ability to monetize Flutter apps with the Google Mobile SDK, offering five ad formats: banners, interstitial ads, video ads, native ads, and app open ads. Flutter apps could now integrate with AdMob and Ad Manager, allowing ad mediation.

Google Mobile Ads SDK for Flutter includes banner ads, full-screen interstitial ads, rewarded video ads, native ads, and app open ads.

By 2021, any developer could add their own Flutter-compatible plugin to pub.dev. By the release of version 2.8, the repository had over 20,000 packages available for Flutter projects. Around this time, Friflex developer Anna Akhlestova first learned about Flutter.

2022: Support for Windows, macOS, Linux, and Games

In the Flutter 2.10 release, developers focused on stable Windows support, including improvements for text handling, keyboard and shortcut integration, command-line argument support, global text input, and more.

Flutter 3 introduced the Flutter Casual Games Toolkit with templates, tutorials, and documentation for casual game development. Developers showcased a starter game template with a main menu, settings page, sound and graphics management, which could be adapted for individual ideas.

The Casual Games Toolkit supported Apple Game Center and Google Play Games services, enabling developers to integrate service widgets like leaderboards into their projects.

Flutter 3 also brought stable support for macOS and Linux.

The latest release, 3.19, introduced a beta version of the Google AI Dart SDK, allowing the integration of AI-based functions from the Gemini family of models into Flutter applications. The Gemini API can be used for detailed control of widget animations, enhancing user interaction quality. Learn more about working with the Google AI Dart SDK in the quick guide.

Additionally, the 3.19 release enables the app development for another platform — Windows Arm64.

Future Plans

In 2023, the Flutter ecosystem grew by 26% to 48,000 packages by the end of December. As of January 2024, Pub.dev had over 700,000 monthly active users. The Flutter development team has big plans for this year, including:

  • Integration of AR to make applications more interactive;
  • Support for Flutter applications on Fuchsia OS, Google’s new operating system;
  • Revisiting UI/UX design;
  • Performance support.

What to Read About Flutter

  1. Flutter Documentation — Official framework page with up-to-date information.
  2. Official Flutter YouTube Channel — Videos from the framework’s development team.
  3. Flutter GitHub Repository — Cloud platform for hosting Flutter IT projects and collaborative development.
  4. Dart Documentation — Official page for the Dart programming language.

Share:

Logo
panda
Any ideas? Let`s chat! Start a project