If Flutter is something new to you, then you should know that Flutter is a Google-backed cross-platform software development framework. A Flutter app can be developed, built for, and deployed on multiple platforms from a single codebase.
Currently, the supported platforms are Android, iOS, web, macOS, Linux, and Windows.
Almost a year ago I was taking a look at what Flutter was capable of in terms of cross-platform and why cross-platform might be a good choice. The points I made there are still valid.
Here, we'll go through a short timeline of Flutter, its current state, run a test app on all supported platforms (after a bit of setup), draw some insights and improvement ideas, and take a look at what the future might bring.
Flutter started out targeting mobile platforms.
Codenamed Sky at its first version, it was working "only" on the Android operating system. In 2015, Android had over 60% mobile OS market share.
Already named Flutter, in 2016, it could be used to build apps for iOS too.
Fast forward 2 years later, on the 27th of February 2018, after 1 year since its alpha release, the first beta release of Flutter was announced. By now, the support for iOS was maturing, and its use in production-ready apps was starting to gain traction.
On the 4th of December same year, Flutter 1.0 was released at the Flutter Live event. It was its first stable version. Plans for supporting desktop (Linux, Mac, and Windows) were revealed. Also, upcoming support for the web was demonstrated with a project codenamed Hummingbird.
The following year, on the 11th of December 2019, Flutter 1.12 was released at the Flutter Interactive event. In 1.12 stable, the implementation of Dark Mode was completed, new Cupertino widgets were added, several UX tweaks were made, and the Add-to-App feature was improved. Add-to-App is the ability to integrate Flutter into an existing Android or iOS mobile apps. Web support was upgraded to the beta channel. macOS support entered alpha.