桌面软件 活跃维护

flet

flet-dev/flet

仅用 Python 构建实时网页、移动和桌面应用。不需要前端经验。

17265
Stars 标星
720
Forks 分支
151
Watchers 关注
288
Open Issues
Python
主要语言
Apache-2.0
开源协议
199.2 MB
仓库大小
3 小时前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:flet-dev/flet
git clone https://github.com/flet-dev/flet.git
git clone git@github.com:flet-dev/flet.git
README.md main

英文原文正文为项目原始 README(英文),本站后续会翻译为中文,当前仅剔除图片与无关章节并统一排版。

用 Python 构建跨平台应用。无需前端经验。

= 3.10英寸 />

Flet 是一个 Python 框架,可以在没有前端开发经验的情况下构建网页、桌面和移动应用。

在 Flet Studio 在线试用 Flet

在浏览器中创建、运行并分享Python应用。从示例开始,编写自己的代码,或寻求AI代理的帮助。无需安装。

   一个Python代码库,六个平台

用 Python 构建你的界面和应用逻辑,并在 iOS、Android、Windows、macOS、Linux 和网页上运行你的应用。不需要 Dart、Swift、Kotlin、HTML 或 JavaScript。

   150个内置控制和服务

用现成的布局、按钮、表单、导航和对话框创建你的界面。通过Material和Cupertino控件自定义颜色、排版和主题,以适应你的应用。

   用于扩展应用的声明式UI

将你的应用组织成可重用的组件,并在应用状态改变时让 UI 更新。更喜欢直接更改控件?命令式风格也支持。比较这些方法。

   你的Python库,移动端

在你的移动应用中使用诸如 NumPy、pandas、Pillow 和 cryptography 等库。Flet 为 iOS 和 Android 提供了预构建的二进制包,因此你无需自己编译本地依赖项。

   可以在浏览器或服务器上运行

直接在浏览器中运行Python,配合Pyodide和WebAssembly,无需Python服务器。或者将Python代码保存在服务器上,实时向浏览器发送界面更新。

   内置封装

使用 flet build 将您的应用打包用于桌面、移动或网络分发,包括 App Store 和 Google Play。在项目的 pyproject.toml 中配置依赖项、图标和平台设置。

   在桌面端和移动端测试你的应用

使用 pytest 编写集成测试,并使用 flet test 对打包后的应用程序运行它们。在桌面和移动设备上点击按钮、输入文本,并验证用户流程,同时在 Android 和 iOS 上进行截图比较。

   借助AI的帮助构建

在 Flet Studio 中使用 AI 代理探索和创建应用,或将你的编码助手连接到 Flet MCP 服务器,以获取特定版本的 API 信息以及查找示例和图标的工具。

   可扩展性

通过组合现有控件,在 Python 中构建自定义控件,或者创建扩展包,封装 Flutter 包以添加新的 UI 组件和平台集成。

   无障碍

添加屏幕阅读器标签、工具提示、键盘快捷键和自定义语义,以帮助更多人使用您的应用。使用语义调试器检查您的用户界面所显示的可访问性信息。

Flet 应用示例

这个简单的计数器应用在屏幕中央显示一个数字。按 按钮可以增加它:

import flet as ft

def main(page: ft.Page):
    counter = ft.Text("0", size=50, data=0)

    def increment_click(e):
        counter.data += 1
        counter.value = str(counter.data)

    page.floating_action_button = ft.FloatingActionButton(
        icon=ft.Icons.ADD, on_click=increment_click
    )
    page.add(
        ft.SafeArea(
            expand=True,
            content=ft.Container(
                content=counter,
                alignment=ft.Alignment.CENTER,
            ),
        )
    )

ft.run(main)

要运行该应用程序,请安装 flet:

pip install 'flet[all]'

将代码保存为 counter.py,然后启动应用程序:

flet run counter.py

这会在本地桌面窗口中打开应用程序。下面的截图显示了按下 三次后的效果:

要在浏览器中运行相同的应用程序,请添加 --web:

flet run --web counter.py

了解更多

社区

贡献

想帮助改进 Flet 吗?请查看 贡献指南。

本站来源与版权声明
  • 本文标题:flet - 仅用 Python 构建实时网页
  • 本文链接:https://www.cn121.com/desktop/flet-dev-flet.html
  • 原项目:flet-dev/flet 版权归原作者 flet-dev 及贡献者所有
  • 收录信息:本站于 2026-10-07 收录本项目,本页所列协议与仓库指标均为收录当时的状态;该日期之后原项目的版本更新与协议变更,本页不作同步。
  • 开源协议:收录时本项目采用 Apache-2.0(查看 LICENSE 原文),本站转载其原始文档(未改动文字,仅剔除图片与无关章节);使用、修改、分发请以该仓库 LICENSE 原文为准。本站对原文仅作排版与图片地址适配, 并保留原项目的 NOTICE 与署名要求。
  • 站点出处:本文首发于 OneTwoOne,收录自 GitHub 开源项目 flet-dev/flet。
  • 内容说明:本页正文为原项目 README 原文(英文),本站后续会翻译为中文(当前尚未译出,仅将二级标题译为中文,便于按栏目定位;标题原文可在下方原仓库中查看),仅剔除了图片与赞助等无关章节、并把相对链接改为绝对地址;页首简介为机器翻译自仓库描述。
  • 引用声明:商业转载、第三方聚合或 AI 检索训练引用时,请务必保留以上来源出处、本文永久链接,以及原项目的版权声明与许可信息。
  • 下架通道:若原项目此后变更或收紧了许可协议、或作者/权利人认为本站的收录方式(译文、排版适配、简介翻译等)超出其授权范围,请通过 xyd3302001@163.com 发送下架通知,并附上项目地址与本页链接。本站核实后将第一时间删除本页内容,或改为不复制原文的目录性收录;署名更正等其他要求可一并提出。