reflex-dev/reflex · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈
[!NOTE] 使用 Reflex 更快构建:
- AI Builder - 在几秒内生成全栈 Reflex 应用。
- Agent Toolkit - 将 MCP 和 Skills 连接到您的编码助手。
- App Management - 部署和管理您的 Reflex 应用。
简介
Reflex 是一个用于使用纯 Python 构建全栈 Web 应用的库。
主要特性:
- 纯 Python - 使用 Python 编写应用的前端和后端,无需学习 Javascript。
- 完全灵活 - Reflex 易于入门,但也能扩展到复杂的应用。
请参阅我们的 架构页面 以了解 Reflex 的内部工作原理。
⚙️ 安装
重要: 我们强烈建议使用虚拟环境,以确保 reflex 命令在您的 PATH 中可用。
🥳 创建您的第一个应用
使用 uv 创建项目、添加 Reflex 并启动开发服务器:
mkdir my_app_name
cd my_app_name
uv init
uv add reflex
uv run reflex init
uv run reflex run
你应该能在 http://localhost:3000 看到你的应用正在运行。
现在你可以修改 my_app_name/my_app_name.py 中的源代码。Reflex 具有快速刷新功能,因此当你保存代码时,可以立即看到更改。
🫧 示例应用
使用 Reflex 用 Python 构建一个图像生成应用:定义 UI,在类中管理状态,并从事件处理器中调用图像模型。
import reflex as rx
import openai
client = openai.AsyncOpenAI()
class State(rx.State):
prompt: str = ""
image_url: str = ""
processing: bool = False
@rx.event
def set_prompt(self, value: str):
self.prompt = value
@rx.event
async def generate(self):
self.processing = True
yield
response = await client.images.generate(
model="gpt-image-1.5",
prompt=self.prompt,
)
self.image_url = f"data:image/png;base64,{response.data[0].b64_json}"
self.processing = False
def index():
return rx.vstack(
rx.heading("Image Generator"),
rx.input(placeholder="Enter a prompt...", on_change=State.set_prompt),
rx.button("Generate", on_click=State.generate, loading=State.processing),
rx.image(src=State.image_url),
)
app = rx.App()
app.add_page(index, title="Reflex:Image Generation")