flet 0.22.0 copy "flet: ^0.22.0" to clipboard
flet: ^0.22.0 copied to clipboard

Write entire Flutter app in Python or add server-driven UI experience into existing Flutter app.

0.22.0 #

  • Controls enhancement (see #2882 for details).
  • Theme Enhancement (#2955).
  • Rive Control (#2841).
  • Control.parent property (#2906).
  • Container.on_tap_down event.
  • Add upload_endpoint_path into flet.fastapi.app (#2954).
  • Add checkbox border side state (#2973).
  • Global context for session (#2934).
  • Fix silent error in page.run_task (#2959).
  • Web: patch html title with app_name (#2909).
  • Container: fix triggered both on_click and on_long_press events (#2914).

0.21.2 #

  • Fix for mobile Safari: Store session ID in SessionStorage instead of window.name.
  • Bugfixing on Python side.

0.21.1 #

  • Bugfixing.

0.21.0 #

  • FastAPI instead of built-in Fletd server. Mixed async/sync apps. (#2700).
  • CupertinoActivityIndicator Control (#2762).
  • LottieControl and Video v2 (#2673).
  • CupertinoActionSheet and CupertinoActionSheetAction controls (#2763).
  • CupertinoSlidingSegmentedButton and CupertinoSegmentedButton controls (#2767).
  • CupertinoTimerPicker and CupertinorPicker Controls (#2743).
  • CupertinoContextMenu and CupertinoContextMenuAction controls (#2772).
  • CupertinoDatePicker Control (#2795).
  • Page.on_app_lifecycle_state_change event (#2800).
  • More Semantics properties and SemanticsService control (#2731).
  • Fix container.dart for issue #2628 (#2701).(#2701)
  • Adaptive fixes (#2720).
  • label_style property for Checkbox, Switch, and Radio (#2730).
  • Additional properties (#2736).
  • Reorder __init__ (#2724).

0.20.2 #

  • Move system_overlay_style from AppBar to Theme (#2667).
  • flet build command checks minimal Flutter SDK version.
  • Buttons turn to CupertinoDialogAction controls inside adaptive dialogs.
  • FletApp control takes control create factories from a parent app.

0.20.1 #

  • Migrated to Flutter 3.19
  • Fixed scrolling behavior changes in scrollable controls.
  • Remove Page.design and replace with Page.adaptive (#2650).
  • Rename Control.on_update to Control.before_update (#2642).

0.20.0 #

  • AppBar.system_overlay_style property (#2615).
  • New CupertinoButton props: filled, style.bgcolor, style.padding, text, icon, icon_color.
  • Added NavigationBar.border property which is used in adaptive mode only.
  • Page.design and Pagelet.design properties to force Material, Cupertino or Adaptive design language on entire app (#2607).
  • Page.media property with the data about obstructed spaces on the device (#2613).
  • Adaptive buttons (#2591).
  • Control.on_update() method for better custom controls.
  • --include-packages option and support for pubspec.yaml for custom Flutter packages plus API for adding custom Flutter packages.
  • Add rtl property to multiple controls (#2582).
  • Fix: Material icon is shown instead of Cupertino icon if its name is thesame (#2581).
  • TextStyle.letter_spacingproperty (#2574).
  • Audio, AudioRecorder, Video and WebView controls moved into separate Flutter packages (#2579).
  • Introduced Control.on_update() overridable method (#2578).
  • New AlertDialog properties: icon, bgcolor, elevation.
  • expand_loose property for Control and all controls that have expand property (#2561).
  • Pyodide v0.25.0.
  • flet create command to show verbose output (#2544).
  • AudioRecorder control (#2494).
  • Bugfix: flet pack --distpath deletes dist directory (#2500).
  • Added recursive adaptive property to all container-alike controls.
  • TextField.text_vertical_align property (#2496).
  • CupertinoButton Control (#2495).
  • CupertinoListTile control (#2487).
  • Support for custom Flutter controls (#2482).
  • Pagelet control (#2469).
  • Add AppBar.adaptive (#2458).
  • Cupertino Icons and Colors (#2433).
  • CupertinoTextfield control (#2417).
  • FloatingActionButtonLocation offset (#2411).

0.19.0 #

  • flet build to apply Python SSL fix when packaging for iOS and Android (#2349).
  • Upgrade Android Gradle in flet build app template (#2350).
  • flet build -vv should run pip install with verbose output (#2351).
  • Add Python output/logging to troubleshoot empty screens on startup of built app (#2352).
  • flet build should raise an error when trying to package an app with native modules for iOS or Android (#2356).
  • flet build to add timestamp (hash) asset with Flet Python app to re-extract when code changes (#2289).
  • Handle/bypass if __name__ == "__main__" check on Android.
  • Support reading dependencies from pyproject.toml.
  • flet build to fix --base-url with surrounding slashes (#2369).
  • CupertinoAlertDialog, CupertinoDialogAction, adaptive property for AlertDialog (#2365).
  • Dismissible.confirmDismiss prop (#2359).
  • ListView.reverse and GridView.reverse props (#2335).
  • Text.style type Deprecation warning (#2286).
  • Add LineChartData.prevent_curve_over_shooting and LineChartData.prevent_curve_over_shooting_threshold props (#2354).
  • flet build to add checks to allow certain build commands according to "build_on" platform (#2343).
  • Fixed: flet build gives "OSError: [WinError 193] %1 is not a valid Win32 application" for some users (#2318).
  • Fixed: PubSub is not shared between pages in the same FastAPI app (#2368).
  • Fixed: check for DISPLAY instead of XDG_CURRENT_DESKTOP to check if linux machine is GUIless or not (#2373).

0.18.0 #

  • flet build command to package Flet app for any platform (docs).
  • Added TextStyle for the Text control (#2270).
  • Refactor code, add Enum deprecation utils (#2259).
  • CupertinoAppBar control (#2278).
  • Fix AlertDialog content updating (#2277).
  • Fix FLET_VIEW_PATH ignored on linux (#2244).
  • MenuBar, SubMenuButton and MenuItemButton controls (#2252).
  • convert 'key' to a super parameter (#2258).

0.17.0 #

  • SearchBar control (#2212).
  • CupertinoNavigationBar control (#2241).

0.16.0 #

  • CupertinoSlider control and Slider.adaptive (#2224).
  • CupertinoRadio control and Radio.adaptive (#2225).
  • Fix NavigationBar.label_bahavior (#2229).
  • CupertinoSwitch control (docs).
  • Disable fade-in effect on Flet app start.
  • Tab alignment bug fix (#2208).
  • Tab visibility (#2213).
  • Dark window title for Windows (#2204).
  • Fix ValueError on web page resize (#1564).

0.15.0 #

  • ExpansionPanel and ExpansionPanelList controls (docs).
  • CupertinoCheckBox control, adaptive CheckBox (docs).
  • Additional control props (#2182):
    • Card.shape.
    • NavigationDestination.tooltip.
    • NavigationRail: elevation, indicator_color, indicator_shape.
    • BottomSheet: bgcolor, elevation.
  • Added Dropdown.Option.visible property.
  • Fix AlertDialog broken content when testing in Flet app (#2192).

0.14.0 #

  • SelectionArea control (docs).
  • SegmentedButton control (docs).
  • ExpansionTile control (docs).
  • BottomAppBar control (docs).
  • Add console as a build argument (#2146).
  • --uac-admin flag added to flet pack command (#2149).
  • Bump Flutter dependencies.

0.13.0 #

  • Dismissible Control (#2124).
  • TimePicker control (#2129).
  • Fixed: verify value limits (#2121).
  • Added thumb_icon to Switch (#2116).
  • Feature: TextField Input validation (#2101).

0.12.2 #

  • Flutter 3.16.0
  • Added ´__repr__´ to Control class (#2091).
  • Added ´skip_route_change_event´ to ´page.go_async´ (#2092).

0.12.1 #

  • Ability to expand ButtomSheet 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).
  • Fixed: NavigationDrawer disappears when you move the window and is not opening again (#2062).
  • Fixed: alert dialog doesn't close (#2011).
  • Fixed: Resizing app's window with an opened BottomSheet triggers new addition to Overlay (#2075).
  • Fixed: on_window_event isnt handled after page navigation (#2081).
  • Fixed: Routing is not working in 0.12.0 (#2082).
  • Fixed: routing regression.
  • Fixed: Multiple dialogs (AlertDialog) will create a ghost dialog (#1670).

0.12.0 #

  • 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).
  • Fixed: Two Datepicker Opening Issue (#2025).
  • Fixed: Using Audio and FilePicker at the same time, when click on the FilePicker, the audio automatically replays (#1807).
  • Fixed: Audio issue while Route Changing (#1236).
  • Fixed: Snackbar cause Audio stop playing (#1772).
  • Fixed: scroll_to() with zero duration does nothing (#1659).
  • Fixed: cannot get height and width for page (#1960).
  • Fixed: Put it the right version of flet (#1997).
  • Fixed: Chip.selected property type changed to bool (#2048).
  • Fixed: Unreliable detection of SVG images (#2053).

0.11.0 #

  • DatePicker control (docs).
  • Chip control (docs).
  • Pyodide v0.24.1.
  • Python 3.12 support.
  • Added AlertDialog.inset_padding property (#1899.
  • Embedded mode to work with serious_python.

0.10.3 #

  • Add proxy_path parameter to flet_fastapi.app() (#1882).
  • Fix flet create crashes with an empty project name.

0.10.2 #

  • Wrapped --codesign-identity & --add-binary for flet pack (#1789).
  • Fix incomplete code blocks in flet_core/page.py.
  • Fix disabled color of FilledButtons.
  • Add AppView and WebRenderer enums to flet-pyodide.
  • Pyodide v0.24.0.

0.10.1 #

  • Fix Cavas.Text drawing (#1783)
  • Use alternative method to determine user computer's IP (#1733)

0.10.0 #

  • Hosting Flet web apps in FastAPI (docs).
  • Migrated to Flutter 3.13.1.
  • Pydantic 2.0 support (Copier upgraded to 8.2.0).
  • BREAKING: DataTable.data_row_height replaced with DataTable.data_row_min_height and DataTable.data_row_max_height.

0.9.0 #

  • Added --android option to flet run command.
  • Added page.debug property (#1649)
  • Added page.platform_brightness property and page.platform_brightness_change event (#1630)
  • Store session ID in html.window.name (#1629)
  • Do not assign random port on Windows with --ios flag (#1620)

0.8.4 #

  • Bumping version as PyPi was out of space.

0.8.3 #

  • Fixed: FilePicker crash the flet.app() after open directory dialog and choose one directory (#1572)

0.8.2 #

  • Fix flet pack command on macOS (#1580).
  • Fixed: Assets dir and manifest does not work (#1573)
  • Fixed: Flet CLI crashes if git is not installed (#1581)

0.8.1 #

  • Fix auth and PubSub imports in page.py and connection.py.
  • Fix broken flet pack command.

0.8.0 #

  • 📱🎉 iOS support - build standalone iOS apps in Python:
  • Part of 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.
  • Less annoying re-connecting logic and loading page for mobile Flet apps.
  • Enum parameters for 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)
  • Flet packages version is centralized in flet_core.version.
  • 💥 Breaking change: OAuth providers must be imported from flet.auth.providers module, for example:
from flet.auth.providers import GitHubOAuthProvider
  • Added Image.error_content property - fallback content if image cannot be loaded.
  • New 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.
  • New 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().
  • New FletApp properties: reconnect_interval_ms, reconnect_timeout_ms, on_error.
  • New TextField properties: autocorrect, enable_suggestions, smart_dashes_type, smart_quotes_type.
  • New SafeArea control.
  • New SnackBar properties: behavior, dismiss_direction, show_close_icon, close_icon_color, margin, padding, width, elevation.
  • New View.fullscreen_dialog property.
  • ft.app() assumes assets_dir="assets" by default.
  • New PaintSweepGradient.rotation property.

0.7.4 #

  • Added use_color_emoji to ft.app() in flet-pyodide (#1416).

0.7.3 #

  • Fix missing FLET_APP_WEB declaration in flet-pyodide.

0.7.2 #

  • Fix: Route change by url is not working if page.theme specified (#1406).
  • Rollback flutter_svg to 1.1.6 to fix regressions in Plotly charts (#1402).
  • Force web server in desktop mode with ft.app(view=ft.FLET_APP_WEB).

0.7.1 #

  • ButtonStyle with shape or side params failed in flet 0.7.0 (#1390).

0.7.0 #

0.6.2 #

  • Fix SnackBar (and other controls) exit animation.
  • Fix Text default style color.

0.6.1 #

  • Fix regression in AlertDialog and BottomSheet controls (#1344)

0.6.0 #

  • Canvas control (docs).
  • Rich text support in Text control.
  • Added url and url_target to controls with on_click event (#1337)
  • Auto-follow links in Markdown (docs).
  • Capturing web client info: IP and user agent (#1302)
  • Fix: Make non-visual controls working with routing (#1333)
  • Fix: Update page.route if typed in the URL (#1289)

0.5.2 #

  • Fix: Dispose controls only on session closed event
  • Fix "There is no current event loop" error in auth module

0.5.1 #

  • Fix page reference in will_unmount method.

0.5.0 #

  • Fixed: Memory usage continues to increase. (#1223)
  • Fixed: possible memory leak (#969)
  • Color values can contain opacity, e.g. color=red,0.5 or ft.colors.with_opacity(0.5, "red")
  • 1st class Flet charts based on fl_chart package (#1255)
  • Pyodide 0.23
  • Use named loggers in Python (#1157)
  • Fix Contribution guide as PDM is no longer used (#1124)
  • Added focus() method, focus and blur events to Elevated, Outlined, Text and Icon buttons (#1079)
  • New Card props: color, shadow_color, surface_tint_color (#1078)
  • Added WindowDragArea.maximizable property (#1077)
  • Added Container.blur and Container.shadow properties (#1076)
  • Add template for Q&A discussions (#1070)

0.4.2 #

  • Fix reading versioninfo for PyInstaller 5.8.0
  • Fix Dropdown.disable property

0.4.1 #

  • Slider.round to round slider value on a label
  • Fix page.client_storage.get_keys() timeout
  • Fix encode() import in PyInstaller integration
  • Fix "ConnectionAbortedError" error on Windows
  • Consistent licensing across the code - Apache 2.0
  • Fix assets loading in a sub-directory app (#1019)
  • Add --distpath option to flet pack and flet publish commands (#1018)
  • Updating manifest.json when using flet publish (#1014)
  • Fix "Address already in use" error on flet run hot reload (#1007)
  • Force Python sub-process to run with UTF-8 encoding (#1002)
  • Fix: View with content crashes in some routing scenarios (#1001)

0.4.0 #

  • Changed re-connection logic to make hot reload work (#971)
  • Pyodide publishing fixes and improvements (#953)
  • feat: Add PaddingValue to init.py (#936)
  • Standalone Flet web apps with Pyodide (#913)
  • modified tooltip attribute from prefere* to prefer* (#909)
  • Fix unicode encoding in FletTcpSocketServerProtocol
  • Fix relative assets path in desktop app
  • PDM changed to Poetry
  • Add --hidden-import option to flet pack command
  • Add transparancy to matplotlib (#889)
  • Replace Fletd server for desktop apps with a light-weight Python shim (#838)
  • add default values in Border dataclass (#883)
  • Fix for issue in control.py when checking add command (#835)
  • Fix async pubsub (#868)
  • add: Border, BorderSide, Scale Offset, Rotate to __init__.py (#866)
  • Loading images from a local file (#817)
  • Asyncio support (#799)
  • Set filled=True when setting bgcolor in TextField (#807)
  • Page transition without animation (#809)

0.3.2 #

  • Fix flet pack command on Windows and macOS (#795)

0.3.1 #

  • Fixed Flutter package CHANGELOG and README.

0.3.0 #

  • flet pack CLI to create app bundles with custom icons and metadata (#770)
  • Control comments (#681)
  • Fix MaterialState error in ButtonStyle (#689)
  • Flet CLI moved into separate module (#679)
  • Added BorderRadius to __init__.py (#691)
  • Added dense property to TextField and Dropdown controls (#696)
  • Correctly handle control replacement (#710)
  • Fix "replace" when moving children in the collection (#711)
  • Remove hard-coded colors in Markdown default code theme (#731)
  • Authorization should allow to override, such as request_token() methods (#776)

0.2.4 #

  • Use correct Flet viewer path when installed from a source package (#675)
  • add ControlEvent to __init__.py (#657)
  • fix: handle a few corner cases (#503)

0.2.2 #

  • Make Control.offset work without animation enabled (#632)
  • Added Dropdown.alignment property (#630)
  • Remove beartype runtime check for all value properties
  • Fix page.scroll to allow None and strings
  • Literals to Enums (#626)
  • gapless_playback is True by default for base64 images
  • Ability to change border shape of FAB control (#621)
  • Added Slider's on_change_start and on_change_end events (#620)
  • DataTable control: 1-to-1 mapping to Flutter (#583)
  • Implemented page.can_launch_url() (#582)
  • Update project changelog from very beginning (#581)
  • Publish pre releases to pypi.org (#579)
  • Theming Slider control (#573)

0.1.65 #

  • Fixed: Floating Action Button now showing on top left (#567)
  • Using variable fonts (#21)
  • Old flet client app versions do not launch on Mac (#161)
  • NavigationBar control (#193)
  • ResponsiveRow control (#227)
  • Add code syntax highlighter to markdown (#294)
  • feature: add mouse scroll wheel event (#354)
  • Tooltip class (#367)
  • BottomSheet control (#483)
  • Fixed: Calling update() inside Control.did_mount() causes deadlock (#489)
  • Add page.window_maximizable (#494)
  • Add an ability to change font family of TextField (#511)
  • Feature: Theming Switch and Checkbox component (#523)
  • Change shape of AlertDialog (#537)
  • Fixed: Saving and retreiving a string value from client storage adds quotation marks (#545)
  • Matplotlib and Plotly Charts (#509)
  • make control a cooperative object (#490)

0.1.62 #

  • Initial release of Flet Flutter package.
  • GestureDetector and other fixes (#459)
  • removed all problems except dart:html problem because it needs material html kind of thing (#461)
  • fix: ensure correct version is fetched in dev mode (#443)
  • Fix controls setter for empty list input (#454)
  • make ink=True behavior consistent with ink=False (#427)