Flet 1.0 Released for Production Python Apps Across Web, Desktop and Mobile
Flet 1.0.0 is on PyPI under Apache 2.0, enabling Python-only apps across web, desktop, Android and iOS, with updated testing, packaging and declarative UI features.
Flet lets developers write Python while rendering Material and Cupertino widgets on iOS, Android, Windows, macOS, Linux and the browser, without Dart, Swift, Kotlin or JavaScript. The SDK requires Python 3.10 or newer and installs with pip install 'flet[all]'. The flet build command produces artifacts for Windows, macOS, Linux, iOS, Android and web, and the CLI accepts eight targets: apk, aab, ipa, ios-simulator, windows, macos, linux and web.
The project's test matrix runs framework unit tests across Python 3.10 through 3.14, along with Flutter-side tests. Control and example integration tests check behavior and compare screenshots to catch functional bugs and visual regressions, while Python binary package tests exercise native libraries on Android and the iOS simulator. The mobile pipeline builds for Python 3.12, 3.13 and 3.14. Flet build integration tests compile apps across those Python versions for six platforms, and flet test launches a packaged app and drives it on five native platforms, including Linux ARM64. Developers can write their own integration tests with pytest, run via flet test against a packaged build, with screenshot comparison on Android and iOS.
Flet bundles Python 3.12, 3.13 or 3.14 with an app, and web builds use the corresponding Pyodide release. The Flet package index lists more than 100 packages, including NumPy, pandas, Matplotlib, Pillow, SciPy, scikit-learn, cryptography and pydantic-core, plus supporting native libraries. The mobile-forge pipeline automates wheel builds for iOS and Android, though availability still depends on the package and target.
Flet now tracks changed properties and skips unnecessary comparisons during UI reconciliation; benchmarks from version 0.83 measured up to 6.7x improvement in control diffing. In packaged native apps, dart-bridge lets Python and Dart runtimes communicate inside one process without sockets, with dedicated channels for binary data. Packaging enables bytecode compilation by default, and redesigned Android packaging loads Python packages directly from the APK without extraction.
Flet Declarative describes UI as a function of application state and organizes it into reusable components. Flet Studio and the Flet mobile app are themselves declarative Flet apps. The imperative style remains supported, and the documentation compares both approaches.
The compatibility policy deprecates APIs before removal, with a default deprecation period of three minor releases. The Flet MCP server gives AI coding assistants version-specific Flet API information and tools for finding examples, icons and CLI options. Flet Studio runs in the browser with a built-in AI agent, and projects can be downloaded for local development.
MarkTechPost reported that upgrading from version 0.28 is a real migration because handlers now run on one event loop. The release also includes an interactive explainer covering the build pipeline across eight targets, declarative versus imperative state, CI test layers, runtime bundling with mobile wheels and the event loop trap.