Skip to main content

Flet logo

Build multi-platform apps in Python. No frontend experience required.

License Package version Monthly downloads Python >= 3.10 Build status Docstring coverage


Flet is a framework that allows building mobile, desktop and web applications in Python only without prior experience in frontend development.

   Single code base for any device

Your app will equally look great on iOS, Android, Windows, Linux, macOS and web.

   Build an entire app in Python

Build a cross-platform app without knowledge of Dart, Swift, Kotlin, HTML or JavaScript - only Python!

   150+ built-in controls and services

Beautiful UI widgets with Material and Cupertino design: layout, navigation, dialogs, charts - Flet uses Flutter to render UI.

   50+ Python packages for iOS and Android

Numpy, pandas, pydantic, cryptography, opencv, pillow and other popular libraries.

   Full web support

Flet apps run natively in modern browsers using WebAssembly and Pyodide, with no server required. Prefer server-side? Deploy as a Python web app with real-time UI updates.

   Built-in packaging

Build standalone executables or bundles for iOS, Android, Windows, Linux, macOS and web. Instantly deploy to App Store and Google Play.

   Test on iOS and Android

Test your project on your own mobile device with Flet App. See your app updates as you make changes.

   Extensible

Easily wrap any of thousands of Flutter packages to use with Flet or build new controls in pure Python using built-in UI primitives.

   Accessible

Flet is built with Flutter which has solid accessibility foundations on Android, iOS, web, and desktop.

Flet app example

Below is a simple "Counter" app, with a text field and two buttons to increment and decrement the counter value:

import flet as ft

def main(page: ft.Page):
    page.title = "Flet counter example"
    page.vertical_alignment = ft.MainAxisAlignment.CENTER

    input = ft.TextField(value="0", text_align=ft.TextAlign.RIGHT, width=100)

    def minus_click(e):
        input.value = str(int(input.value) - 1)

    def plus_click(e):
        input.value = str(int(input.value) + 1)

    page.add(
        ft.Row(
            alignment=ft.MainAxisAlignment.CENTER,
            controls=[
                ft.IconButton(ft.Icons.REMOVE, on_click=minus_click),
                input,
                ft.IconButton(ft.Icons.ADD, on_click=plus_click),
            ],
        )
    )

ft.run(main)

To run the app, install flet:

pip install 'flet[all]'

then launch the app:

flet run counter.py

This will open the app in a native OS window - what a nice alternative to Electron! 🙂

To run the same app as a web app use --web option with flet run command:

flet run --web counter.py

Learn more

Community

Contributing

Want to help improve Flet? Check out the contribution guide.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flet-1.0.0.tar.gz (560.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flet-1.0.0-py3-none-any.whl (631.6 kB view details)

Uploaded Python 3

File details

Details for the file flet-1.0.0.tar.gz.

File metadata

  • Download URL: flet-1.0.0.tar.gz
  • Upload date:
  • Size: 560.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for flet-1.0.0.tar.gz
Algorithm Hash digest
SHA256 7d867d4832b03b380864d751dfec6a43ec8391b3db9f7f9d0ab93219a6ce2281
MD5 f99f367be802d8729b01009febaeb2e9
BLAKE2b-256 365dbd3f4b41f7aa16d7e6802a28a2b31878a94c3e91c67d866b02c7f94b702d

See more details on using hashes here.

File details

Details for the file flet-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: flet-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 631.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.13 {"installer":{"name":"uv","version":"0.12.13","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for flet-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e61fffc7f2ee70de1d0729ee39177b838897f10258fb92d534e4a0ef8564f48
MD5 14ca310b3bcae6b9087faaf4fd060d19
BLAKE2b-256 b76a80aee6450ec44d11fbfcdd2b539bfcf6516442e561cb82dc0af0c1543c5e

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 files

0.86.5

2 files

0.86.4

2 files

0.86.3

2 files

0.86.2

2 files

0.86.1

2 files

0.86.0

2 files

0.85.3

2 files

0.85.2

2 files

0.85.1

2 files

0.85.0

2 files

0.84.0

2 files

0.83.1

2 files

0.83.0

2 files

0.82.2

2 files

0.82.0

2 files

0.81.0

2 files

0.80.5

2 files

0.80.4

2 files

0.80.3

2 files

0.80.2

2 files

0.80.1

2 files

0.80.0

2 files

0.28.3

1 file

0.28.2

1 file

0.28.1

1 file

0.27.6

1 file

0.27.5

1 file

0.27.4

1 file

0.27.3

1 file

0.27.2

1 file

0.27.1

1 file

0.27.0

1 file

0.26.0

1 file

0.25.2

1 file

0.25.1

1 file

0.25.0

1 file

0.24.1

10 files

0.24.0

10 files

0.23.2

10 files

0.23.1

10 files

0.23.0

10 files

0.22.1

10 files

0.22.0

10 files

0.21.2

10 files

0.19.0

10 files

0.18.0

10 files

0.17.0

10 files

0.16.0

10 files

0.15.0

10 files

0.14.0

10 files

0.13.0

10 files

0.12.2

10 files

0.12.1

10 files

0.12.0

10 files

0.11.0

10 files

0.10.3

10 files

0.10.2

10 files

0.10.1

10 files

0.10.0

10 files

0.9.0

10 files

0.1.65

10 files

0.1.64

10 files

0.1.63

10 files

0.1.62

10 files

0.1.61

10 files

0.1.60

10 files

0.1.59

10 files

0.1.58

10 files

0.1.57

10 files

0.1.56

10 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page