Skip to main content

Flet for Pyodide - build standalone SPA in Python with Flutter UI.

Project description

Flet for Pyodide - build standalone Single-Page Applications (SPA) in Python with Flutter UI

Flet is a rich User Interface (UI) framework to quickly build interactive web, desktop and mobile apps in Python without prior knowledge of web technologies like HTTP, HTML, CSS or JavaSscript. You build UI with controls based on Flutter widgets to ensure your programs look cool and professional.

Requirements

  • Python 3.7 or above on Windows, Linux or macOS

Installation

pip install flet

Create the app

Create main.py file with the following content:

import flet as ft

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

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

    def minus_click(e):
        txt_number.value = str(int(txt_number.value) - 1)
        page.update()

    def plus_click(e):
        txt_number.value = str(int(txt_number.value) + 1)
        page.update()

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

ft.app(main)

Run the app

flet run --web main.py

Sample app in a browser

Publish app as a static website

flet publish main.py

A static website is published into ./dist directory.

Test website

python -m http.server --directory dist

Open http://localhost:8000 in your browser to check the published website.

Deploy website

Deploy a static website to any free hosting such as GitHub Pages, Cloudflare Pages or Vercel!

Learn more

Visit Flet website.

Continue with Python guide to learn how to make a real app.

Browse for more Flet examples.

Join to a conversation on Flet Discord server.

Project details


Download files

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

Source Distribution

flet_pyodide-0.24.1.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

flet_pyodide-0.24.1-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file flet_pyodide-0.24.1.tar.gz.

File metadata

  • Download URL: flet_pyodide-0.24.1.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.14

File hashes

Hashes for flet_pyodide-0.24.1.tar.gz
Algorithm Hash digest
SHA256 4b4dd8f7234e48d72be703dadbf8ce6d98a6367f5b2e53f64513a3e3f6906068
MD5 c6f4f00459a7526fe6cdcdfc5e162c31
BLAKE2b-256 9170aff3dc6dd887b467de87d5855155e6e1623647d3239aeead40f7c2026818

See more details on using hashes here.

File details

Details for the file flet_pyodide-0.24.1-py3-none-any.whl.

File metadata

File hashes

Hashes for flet_pyodide-0.24.1-py3-none-any.whl
Algorithm Hash digest
SHA256 447528b466193e83b00ad0ec7d883be7cfb24559b2e885b6e6cac8eb83d4b6b5
MD5 307c99a220df56fb5bf350b0c71e6c83
BLAKE2b-256 bf539d141d877ff01c81edc8f0abe45fc501b7da59b59dcfb9809186ce8084e4

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page