NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #2251 most downloaded on pub.dev
Write entire Flutter app in Python or add server-driven UI experience into existing Flutter app.
Last release 7 days ago
30 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 58 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
4 years old
96 releases · first in 2022
One column per quarter.
ExpansionPanel and ExpansionPanelList controls (docs).
ExpansionPanel and ExpansionPanelList controls (docs).CupertinoCheckBox control, adaptive CheckBox (docs).Card.shape.NavigationDestination.tooltip.NavigationRail: elevation, indicator_color, indicator_shape.BottomSheet: bgcolor, elevation.Dropdown.Option.visible property.SegmentedButton control (docs).
Added ´__repr__´ to Control class (#2091).
Ability to expand BottomSheet to the top of the screen with BottomSheet.is_scroll_controlled property (#2087).
BottomSheet to the top of the screen with BottomSheet.is_scroll_controlled property (#2087).BottomSheet.maintain_bottom_view_insets_padding to avoid obstructing controls with on-screen keyboard (#2010).NavigationDrawer disappears when you move the window and is not opening again (#2062).NavigationDrawer control (docs).
NavigationDrawer control (docs).Badge control (docs).RangeSlider control (docs).WebView control (docs).Cookiecutter replaces Copier (#2014).page.go(): ability to skip route change event (#2039).Datepicker Opening Issue (#2025).scroll_to() with zero duration does nothing (#1659).Chip.selected property type changed to bool (#2048).Added AlertDialog.inset_padding property (#1899.
DatePicker control (docs).Chip control (docs).AlertDialog.inset_padding property (#1899.serious_python.Add proxy_path parameter to flet_fastapi.app() (#1882).
flet create crashes with an empty project name.Wrapped --codesign-identity & --add-binary for flet pack (#1789).
flet_core/page.py.AppView and WebRenderer enums to flet-pyodide.Use alternative method to determine user computer's IP
Hosting Flet web apps in FastAPI (docs).
DataTable.data_row_height replaced with DataTable.data_row_min_height and DataTable.data_row_max_height.Added --android option to flet run command.
Bumping version as PyPi was out of space.
Fixed: FilePicker crash the flet.app() after open directory dialog and choose one directory
Fixed: Assets dir and manifest does not work
Fix auth and PubSub imports in page.py and connection.py.
auth and PubSub imports in page.py and connection.py.flet pack command.💥 Breaking change: OAuth providers must be imported from flet.auth.providers module, for example:
--ios switch for flet run command to test Flet app on your iOS device.flet package logic moved to a new flet-runtime package. flet package depends on flet-runtime. The new flet-embed package introduced depending on flet-runtime - to run Python apps embedded into Flutter apps.ft.app()s view: ft.AppView and web_renderer: ft.WebRenderer parameters (string values are still supported for backward compatibility), for example:ft.app(main, view=ft.AppView.WEB_BROWSER, web_renderer=ft.WebRenderer.HTML)
version is centralized in flet_core.version.flet.auth.providers module, for example:from flet.auth.providers import GitHubOAuthProvider
Image.error_content property - fallback content if image cannot be loaded.BottomSheet properties: dismissible, enable_drag, show_drag_handle, use_safe_area (#1468).ListTile.toggle_inputs property - clicking on a list tile should toggle the state of Radio, Checkbox or Switch inside the tile.page methods for showing/closing overlays: page.open_banner(), page.close_banner(), page.open_dialog(), page.close_dialog(), page.open_bottom_sheet(), page.close_bottom_sheet().FletApp properties: reconnect_interval_ms, reconnect_timeout_ms, on_error.TextField properties: autocorrect, enable_suggestions, smart_dashes_type, smart_quotes_type.SafeArea control.SnackBar properties: behavior, dismiss_direction, show_close_icon, close_icon_color, margin, padding, width, elevation.View.fullscreen_dialog property.ft.app() assumes assets_dir="assets" by default.PaintSweepGradient.rotation property.Added use_color_emoji to ft.app() in flet-pyodide (#1416).
use_color_emoji to ft.app() in flet-pyodide (#1416).Fix missing FLET_APP_WEB declaration in flet-pyodide.
FLET_APP_WEB declaration in flet-pyodide.Fix: Route change by url is not working if page.theme specified (#1406).
ButtonStyle with shape or side params failed in flet 0.7.0 (#1390).
ButtonStyle with shape or side params failed in flet 0.7.0 (#1390).Programmatically control scroll position and subscribe to scrolling notifications in Page, View, Column, Row, ListView and GridView controls.
Fix SnackBar (and other controls) exit animation.
SnackBar (and other controls) exit animation.Text default style color.Fix regression in AlertDialog and BottomSheet controls
AlertDialog and BottomSheet controls (#1344)Rich text support in `Text` control.
Canvas control (docs).Text control.url and url_target to controls with on_click event (#1337)Markdown (docs).page.route if typed in the URL (#1289)Fix: Dispose controls only on session closed event
Fix page reference in will_unmount method.
page reference in will_unmount method.Fixed: Memory usage continues to increase.
color=red,0.5 or ft.colors.with_opacity(0.5, "red")Fix reading versioninfo for PyInstaller 5.8.0
Dropdown.disable propertySlider.round to round slider value on a label
Changed re-connection logic to make hot reload work
tooltip attribute from prefer* to preferred* (#909)FletTcpSocketServerProtocol--hidden-import option to flet pack command__init__.py (#866)Fix flet pack command on Windows and macOS
flet pack command on Windows and macOS (#795)Fixed Flutter package CHANGELOG and README.
flet pack CLI to create app bundles with custom icons and metadata
flet pack CLI to create app bundles with custom icons and metadata (#770)__init__.py (#691)Fixed: Floating Action Button now showing on top left
GestureDetector and other fixes
Your coding agent can read these notes before it upgrades. Set up the MCP server →