用纯 Python 构建现代 Web 应用。基于坚实的 Web 基础,而非追逐最新潮流——使用 FastHTML,您可以在几分钟内启动从简单的仪表盘到可扩展的 Web 应用等各种项目。
FastHTML 是一个全新的下一代 Web 框架,专为快速、可扩展的 Web 应用设计,代码简洁紧凑。它的设计特点包括:
- 强大且富有表现力:能够构建您所能想象的最先进、交互性最强的 Web 应用。
- 快速且轻量:让您编写更少的代码,完成更多的工作。
- 易于学习和使用:简单直观的语法,能够快速构建复杂应用。
FastHTML 应用完全由 Python 代码构成,因此您可以利用 Python 语言及其生态系统的全部能力。FastHTML 的功能与 HTML 和 HTTP 1:1 对应,但通过良好的软件工程实践将它们封装起来。因此,充分使用此库需要了解这些基础知识。要了解其工作原理,请先阅读:about.fastht.ml。
安装
FastHTML 是一个 Python 库,您可以使用以下命令安装它:
pip install python-fasthtml
在不久的将来,我们计划添加组件库,也可以通过 pip
安装。
使用方法
创建一个简单应用,只需新建一个名为 main.py
的文件,如下所示:
main.py
from fasthtml.common import *
app, rt = fast_app()
@rt('/')
def get():
return Div(P('Hello World!'), hx_get="/change")
serve()
运行应用:
python main.py
运行后,您将在控制台看到应用运行的链接:http://localhost:5001。在浏览器中访问该链接,您将看到一个显示“Hello World!”的页面。恭喜,您已经创建了第一个 FastHTML 应用!
添加交互功能
得益于 HTMX,为应用添加交互非常简单。修改文件,新增以下功能:
main.py
@rt('/change')
def get():
return P('Nice to be here!')
现在,页面上会有一个可点击的元素,点击后会改变文本内容。点击该链接时,服务器会返回一个“HTML 部分”(即 HTML 片段),并插入现有页面中。在本例中,返回的元素会替换原来的 P
元素(这是 HTMX 的默认行为),新路由返回的内容将替换原有内容。