Skip to main content

Flutter 3.47.0

Release Date: August 11, 2026

Remember when Flutter 1.0 was just a mobile SDK for Android and iOS? Seven years on, Flutter 3.47.0 lands with Impeller as the default renderer on Windows, macOS, and Linux, WebAssembly creeping toward default on the web, and the framework quietly outgrowing its own architecture. The trajectory from phone-first toolkit to cross-everything platform is complete.

The Big Split: Material and Cupertino Go Standalone

The headline change in 3.47.0 is architectural. Material and Cupertino UI libraries are now separate packages — material_ui and cupertino_ui — decoupled from the core SDK release cycle. What began in 2018 as two design systems bolted onto the framework is now independently versioned, meaning UI fixes and new widgets no longer wait for the quarterly Flutter train.

Migration is scripted: dart fix --apply --code=migrate_design_widgets rewrites imports automatically, and localization is moving into the same packages.

Impeller Everywhere

The renderer that started as a Skia replacement on iOS now owns desktop. Impeller is on by default across Windows, macOS, and Linux in 3.47.0, bringing precompiled shaders and dramatically less jank to desktop apps. Text rendering gets Signed Distance Function rendering for sharper glyphs, and multi-window support improves with experimental popup windows on Windows and Linux.

The Platform Squeeze

Every release trims legacy support, and 3.47.0 is no exception. Minimum iOS moves from 13 to 15; minimum macOS from 10.15 to 12. Intel Macs get deprecation warnings. The UIScene lifecycle migration is automated for standard apps. Swift Package Manager coverage keeps climbing — 92 of the top 100 iOS plugins have migrated. Windows and Linux finally get flavors (flutter build windows --flavor production).

What Began as a Mobile SDK Is Now…

Widget Previews are stable, letting developers inspect a single widget without launching the full app. GenUI picks up momentum for AI-driven UI generation. Flutter Web inches toward Wasm-by-default with experimental deferred loading. It is the same story Flutter has told since 1.0: start narrow, then expand until the platform boundary disappears. 3.47.0 is the latest chapter — and the architecture changes suggest the next ones will come faster.

What is New?

By continuing to use the site, you agree to the use of cookies.