Flutter is Google’s open-source framework for building natively compiled, multi-platform applications from a single codebase, written in the Dart language. Its own site describes it as “an open-source framework for building beautiful, natively compiled, multi-platform applications from a single codebase,” targeting mobile, web, desktop, and embedded devices. The Flutter repository on GitHub frames it as “Google’s SDK for crafting beautiful, fast user experiences for mobile, web, and desktop from a single codebase.”
Flutter’s defining architectural choice sets it apart from many earlier cross-platform tools: rather than wrapping native UI controls or rendering inside a WebView, Flutter draws its own widgets directly onto a canvas using a hardware-accelerated graphics engine. The original engine was built on Google’s Skia 2D graphics library, later joined by a newer renderer called Impeller. Because Flutter controls every pixel, the same UI can be rendered consistently across platforms, and the framework ships a large catalog of widgets, including its own implementations of platform-styled controls.
The project moved through alpha and beta stages before reaching its first stable release, Flutter 1.0, announced on December 4, 2018, on the Google Developers Blog as “the first stable release of Google’s UI toolkit for creating beautiful, native experiences for iOS and Android from a single codebase.” The announcement noted that thousands of Flutter apps had already been published to app stores before 1.0, and that Google was establishing a stable release channel with planned ongoing releases.
A key productivity feature is stateful hot reload, which lets developers inject changed source code into a running app and see the result almost immediately while preserving application state. Combined with Dart’s support for both just-in-time compilation during development and ahead-of-time compilation to native machine code for release builds, this gives Flutter a fast iteration loop during development and good runtime performance in shipped apps.
Over time Flutter expanded well beyond its original iOS and Android focus to include web, Windows, macOS, Linux, and embedded targets, pursuing a genuinely single-codebase, multi-platform model. It became one of the most prominent alternatives to React Native, with the two frameworks representing contrasting philosophies: React Native maps to native platform widgets, while Flutter renders its own.