JustPy 开源项目教程
justpy项目地址:https://gitcode.com/gh_mirrors/jus/justpy
项目介绍
JustPy 是一个基于 Python 的 Web 框架,旨在通过 Python 代码创建交互式网站,无需编写任何 JavaScript 代码。JustPy 的特点包括:
- 无需前端编程:只需使用 Python 代码即可创建网站。
- 对象导向和组件基础:通过实例化自定义组件类来创建网页元素。
- 前后端一体化:所有编程都在后端完成,简化了开发流程。
- 内置图表支持:支持创建交互式图表,无需外部模块。
- 跨平台支持:支持 Windows、MacOS 和 Linux 等多平台。
项目快速启动
安装 JustPy
首先,通过 pip 安装 JustPy:
pip install justpy
创建第一个 JustPy 应用
以下是一个简单的示例,展示如何在浏览器中显示“Hello Geeks”消息:
import justpy as jp
def hello_world():
wp = jp.WebPage()
wp.add(jp.Div(text="Hello Geeks!", classes="text-center"))
return wp
jp.justpy(hello_world)
保存上述代码为 hello_world.py
,然后在终端运行:
python hello_world.py
打开浏览器,访问 http://localhost:8000
,即可看到“Hello Geeks”消息。
应用案例和最佳实践
创建交互式图表
JustPy 支持多种图表库,如 Matplotlib、Altair、Bokeh 等。以下是一个使用 Matplotlib 的示例:
import justpy as jp
import matplotlib.pyplot as plt
import io
def plot_example():
fig, ax = plt.subplots()
ax.plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16])
buf = io.BytesIO()
fig.savefig(buf, format='png')
buf.seek(0)
return jp.Image(src=buf)
jp.justpy(plot_example)
使用 Tailwind CSS
JustPy 内置支持 Tailwind CSS,可以轻松实现响应式设计和美观的界面:
import justpy as jp
def tailwind_example():
wp = jp.WebPage()
d = jp.Div(classes="bg-blue-500 text-white p-4 text-center", text="Hello Tailwind!", a=wp)
return wp
jp.justpy(tailwind_example)
典型生态项目
与 Pandas 结合
JustPy 可以与 Pandas 结合,快速将 DataFrame 数据展示为网页:
import justpy as jp
import pandas as pd
df = pd.DataFrame({
'A': [1, 2, 3, 4],
'B': [10, 20, 30, 40]
})
def pandas_example():
wp = jp.WebPage()
jp.Table(df, a=wp)
return wp
jp.justpy(pandas_example)
使用 ag-Grid
JustPy 支持 ag-Grid,可以创建高性能的表格组件:
import justpy as jp
def ag_grid_example():
wp = jp.WebPage()
grid = jp.AgGrid(a=wp)
grid.load_pandas_frame(df)
return wp
jp.justpy(ag_grid_example)
通过以上示例,可以看到 JustPy 在快速开发和集成第三方库方面的强大能力。