Your next app.
Built in Python.
Build beautiful web, desktop, and mobile apps from one Python codebase.
No frontend experience required. Just Python.
My first Flet app
Real apps. All Python.
One codebase.
Make yourself at home.
- iOS
- Android
- Windows
- macOS
- Linux
- Web
A SIMPLE EXAMPLE
Your first Flet app.
Start with a simple counter to see how Flet turns Python code into an interactive app.
Build the interface
Use ready-made controls for the text and button. Arrange them with Python.
Add the behavior
Connect the button to a Python function that increases the count.
TRY IT YOURSELF
Try online
Open Flet Studio.
No installation needed.
Try locally
Follow the installation guide for uv or pip.
counter.py
Imperative: update the controls directly when the button is clicked.
Compare the two styles
import flet as ft
defmain(page: ft.Page):
counter = ft.Text("0", size=50, data=0)
defincrement(e):
counter.data +=1
counter.value =str(counter.data)
page.floating_action_button = ft.FloatingActionButton(
icon=ft.Icons.ADD, on_click=increment
)
page.add(
ft.Container(
content=counter,
alignment=ft.Alignment.CENTER,
expand=True,
)
)
ft.run(main)
flet run counter.py
BUILT FOR THE WHOLE JOURNEY
More than a pretty interface.
The controls, libraries, and tools to take your app from an experiment to something you ship.
Good-looking Python GUIs
150+ controls and services. Layouts, navigation, forms, and dialogs, with customizable colors, typography, and themes.
Explore the controls
Your Python libraries. On mobile.
Bring NumPy, pandas, Pillow, and cryptography along. Prebuilt packages for iOS and Android save you the work of compiling native dependencies.
Browse Python packages
Ready to ship
Package your app for desktop, mobile, and web with flet build. Prepare it for distribution, including the App Store and Google Play.
Build and publish
The web, your way
Run Python in the browser with Pyodide and WebAssembly, or keep your code on a server and send real-time UI updates.
Explore web deployment
Test your app
Write pytest tests that tap buttons, enter text, and check user flows in your packaged app. Catch visual changes with screenshots on iOS and Android.
Test your app
Give your AI the right context
Connect your coding assistant to Flet MCP for version-specific API information and tools to find examples, icons, and CLI options.
Connect Flet MCP
Make it your own
Compose custom controls in Python or wrap Flutter packages in extensions to add new UI components and platform integrations.
Build an extension
Build for more people
Support screen readers with labels and custom semantics. Add keyboard shortcuts and inspect the accessibility information your UI exposes.
Explore accessibility
MEET FLET STUDIO
An idea is a
great place to start.
Open your browser. Pick an example, write some Python, or ask the AI agent for a hand. Run your app and share what you make.
Create in Studio
No installation required.
01
Find your starting point
Explore the Gallery and make an example your own.
02
Make it work your way
Edit the code, get help from AI, and see your app run.
03
Share what you made
Send a link, or download your project and keep building locally.
Explore the Gallery
MADE BETTER, TOGETHER
Your app. Our community.
Share an idea, ask a question, or help shape what comes next. Flet is open source, and you're invited.