Flutter makes building cross-platform mobile applications a breeze. This article introduces Flutter, compares it to other mobile development platforms, and shows how to use it to get started building apps.

Flutter is an open-source, cross-platform mobile development framework from Google. It allows high-performance, beautiful applications to be built for iOS and Android from a single code base. It is also the development platform for Google’s upcoming Fuchsia operating system. Additionally, it is architected in a way that it can be brought to other platforms, via custom Flutter engine embedders.

Why Flutter was Created And Why You Should Use It

Cross-platform toolkits have historically taken one of two approaches:

  • They wrap a web view in a native app and build the application as if it were a website.
  • They wrap native platform controls and provide some cross-platform abstraction over them.

Flutter takes a different approach in an attempt to make mobile development better. It provides a framework application developers work against and an engine with a portable runtime to host applications. The framework builds upon the Skia graphics library, providing widgets that are actually rendered, as opposed to being just wrappers on native controls.

This approach gives the flexibility to build a cross-platform application in a completely custom manner like the web wrapper option provides, but at the same time offering smooth performance. Meanwhile, the rich widget library that comes with Flutter, along with a wealth of open-source widgets, makes it a very feature-rich platform to work with. Put simply, Flutter is the closest thing mobile developers have had for cross-platform development with little to no compromise.