【前端】Flet:一款支持python及多语言开发的UI库
创始人
2024-01-22 11:52:08
0

文章目录

  • 介绍
    • 开发生态
      • 支持语言
      • 运行体验
    • 组件
    • API
    • 热更新
  • 开发计划 Roadmap
    • 2022 7月-8月
      • 安全
      • 手机端
      • 桌面端
      • Controls(控件)
      • 核心功能
      • 用户指引(User education)
    • 2022 9月到12月
      • 手机端
      • 控件(Controls)
      • 编程语言支持
      • 核心功能

介绍

Flet enables developers to easily build realtime web, mobile and desktop apps in Python. No frontend experience required.

Flet是一款使用python语言, 帮助开发者构建实时应用(web应用、手机应用、桌面应用)的框架。就我目前的体验来看,该框架底层基于flutter,使用声明式UI,开发体验类似于dart写flutter-app。
启动速度方面, 作为桌面端运行时比较快;作为web运行就慢的一p,理论上至少要经历 python->dart->js的转译过程,自然快不起来。

开发生态

支持语言

目前只支持python开发,后续要支持以下语言 js| c#| go,但我觉得会延期的,毕竟今天都11月中旬了。
在这里插入图片描述

运行体验

  • 直接使用 python main.py运行,1秒级启动。
  • pyinstaller打包为多文件,启动需要4秒;打包为单文件,启动需要更久。
  • 打包时长随你的项目体积和引入库数量而增加,初始大概20s完事。
  • 手机端暂时只支持部署到服务端, 然后浏览器访问,慢的一p。
  • 界面效果类似于uwp应用, 比winform界面好看点。
    在这里插入图片描述

组件

flet组件的核心是 控件Controls, 界面由控件按层级或者树状结构组成。

  • 按钮
  • list
  • 容器(类似于一个空盒子)
    。。。。。。挺丰富的,其余在官网https://flet.dev/docs/controls

API

  • 本地储存能力
    clientStorage, sessionStorage ( 类比web就行 )
  • 文件选择器和拖拽上传
  • 数据加密(使用你自定义的key)

热更新

开发时使用 flet -r main.py. 则递归检查main.py同级的文件或文件夹内代码的改变,实时热更新视图。

开发计划 Roadmap

以下为翻译

2022 7月-8月

安全

  • 开放授权协议认证 (OAuth): GitHub, Google, Azure (Microsoft Account).

手机端

  • Flet 小组件 for Flutter
  • Flet Studio苹果应用 in App Store
  • Flet Studio安卓应用 in Google Play

桌面端

  • Windows and macOS “host” client with hot reload, so the app could be run as flet main.py
  • 似乎已经支持了hot-reload

Controls(控件)

  • ✅ Routing and navigation
  • 导航
    • 导航抽屉:NavigationDrawer
    • 导航栏:NavigationBar
  • 响应式布局(Responsive layout)

核心功能

  • PUbSUB:看着似乎是,使用url访问时,可使用此多人实时通信功能。
  • ✅ PubSub

用户指引(User education)

  • 基于python的样例app(Sample apps in Python):
    • Chat (聊天)

2022 9月到12月

手机端

  • White-labeled Flet mobile app
  • 将flet-app打包成单独的apk或者ipa包
  • 将flet嵌入原生app。

控件(Controls)

  • 表格:DataTable
  • 更多的图表(似乎已经有柱状图和折线图了):Charts
  • 自适应的控件,按照平台差异来决定如何展现:Adaptive controls (controls that change their look depending on platform)
  • ✅ Animations

编程语言支持

  • JavaScript/TypeScript
  • Go
  • C# (.NET)

核心功能

  • flet内嵌一个支持orm的数据库

相关内容

热门资讯

梅江区金山街道开展《广东省家庭... 为增强青少年法律意识和自我保护能力,营造健康成长的良好法治环境,近日,梅江区金山街道办事处联合广东客...
青岛市律师行业红色经典配音大赛... 大众网记者 郭欣 青岛报道 9月21日上午,青岛市律师行业红色经典配音大赛圆满落幕。青岛市律师协会会...
官方通报“顾客称吃日料在三文鱼... 9月22日,上海市嘉定区市场监督管理局发布情况通报: 2025年9月21日,我局关注到有消费者反映,...
原创 特... 据报道,在特朗普政府推动的对华关税战中,原本被视为一场“威慑中国”的贸易策略,最后却变成了美国农业的...
南充经开税务:以政策“滴灌”护... 日前,国家税务总局四川南充经济开发区税务局开展公平竞争政策宣传周系列活动,让政策春风吹进街头巷尾,线...
2025金球奖23日凌晨将揭晓... 2025金球奖颁奖典礼将在北京时间9月23日凌晨,在法国巴黎的沙特莱剧院举行。将于北京时间9月22日...
原创 无... 文/张家豪律师 重庆智豪律师事务所高级合伙人 案情简介:当事人因煤矿宿舍内查出41.4公斤炸药和8枚...
台湾将调涨民生电价,当局能源政... 台湾将于10月起调涨民生电价,影响超1400万用户。岛内各界人士表示,当局不肯正视核电在能源结构中的...
刘学州遭网暴致死案二审未当庭宣... 极目新闻记者 李贤诚 今年6月,“寻亲少年刘学州遭网暴致死案”一审在北京互联网法院宣判:自媒体博主“...
两部门印发育儿补贴制度管理规范... 法治日报讯(记者赵晨熙)近日,国家卫生健康委、财政部联合发布《育儿补贴制度管理规范(试行)》(以下简...