Pynecone 纯 Python 全栈 Web 框架开源项目

我要开发同款
匿名用户2023年03月15日
119阅读

技术信息

开源地址
https://gitee.com/mirrors/Pynecone
授权协议
Apache 2.0

作品详情

Pyecoe是一个全栈Pytho框架,可以使用纯Pytho构建高性能、可自定义的Web应用程序。

Pyecoe应用程序示例下面是一个围绕DALL·E创建UI的示例,这个示例调用了OpeAI的DALL·EAPI,但您可以在本地将其替换为任何ML模型。

下面是创建它的完整代码,这一切都在一个Pytho文件中完成!

importpyecoeaspcimportopeaiopeai.api_key="YOUR_API_KEY"classState(pc.State):"""Theappstate."""prompt=""image_url=""image_processig=Falseimage_made=Falsedefprocess_image(self):"""Settheimageprocessigflagtotrueadidicateimageisotmadeyet."""self.image_processig=Trueself.image_made=Falsedefget_image(self):"""Gettheimagefromtheprompt."""respose=opeai.Image.create(prompt=self.prompt,=1,size="1024x1024")self.image_url=respose["data"][0]["url"]self.image_processig=Falseself.image_made=Truedefidex():returpc.ceter(pc.vstack(pc.headig("DALL·E",fot_size="1.5em"),pc.iput(placeholder="Eteraprompt..",o_blur=State.set_prompt),pc.butto("GeerateImage",o_click=[State.process_image,State.get_image],width="100%",),pc.divider(),pc.cod(State.image_processig,pc.circular_progress(is_idetermiate=True),pc.cod(State.image_made,pc.image(src=State.image_url,height="25em",width="25em",))),bg="white",paddig="2em",shadow="lg",border_radius="lg",),width="100%",height="100vh",bg="radial-gradiet(circleat22%11%,rgba(62,180,137,.20),hsla(0,0%,100%,0)19%)",)#Addstateadpagetotheapp.app=pc.App(state=State)app.add_page(idex,title="Pyecoe:DALL·E")app.compile()Pyecoe中的UI从用户界面开始。

defidex():returpc.ceter(...)

此idex函数定义应用程序的前端。可使用不同的组件,例如ceter、vstack、iput和butto来构建前端。组件可以相互嵌套以创建复杂的布局。您可以使用关键字参数来使用CSS的全部功能来设置它们的样式。

Pyecoe附带60多个内置组件。

状态classState(pc.State):"""Theappstate."""prompt=""image_url=""image_processig=Falseimage_made=False状态定义了应用程序中可以更改的所有变量(称为vars)以及更改它们的函数。这里的状态由prompt和组成image_url。还有布尔值image_processig和image_made指示何时显示循环进度和图像。

事件处理器defprocess_image(self):"""Settheimageprocessigflagtotrueadidicateimageisotmadeyet."""self.image_processig=Trueself.image_made=Falsedefget_image(self):"""Gettheimagefromtheprompt."""respose=opeai.Image.create(prompt=self.prompt,=1,size="1024x1024")self.image_url=respose["data"][0]["url"]self.image_processig=Falseself.image_made=True

在状态中定义了称为事件处理程序的函数来更改状态变量。事件处理程序是在Pyecoe中修改状态的方式。可以调用它们以响应用户操作,例如单击按钮或在文本框中键入,这些动作称为事件。

我们的DALL·E。应用程序有两个事件处理程序,process_image用于指示正​​在生成图像和get_image调用OpeAIAPI。

路由最后定义应用程序并告诉它使用什么状态。

app=pc.App(state=State)添加一条从应用程序根目录到索引组件的路由,还添加了一个标题,该标题将显示在页面预览/浏览器选项卡中。

app.add_page(idex,title="Pyecoe:DALL-E")app.compile()安装Pyecoe需要以下内容才能开始:

Pytho3.7+Node.js12.22.0+ (不必编写任何Javascript)$pipistallpyecoe创建您的第一个Pyecoe应用程序安装Pyecoe也会安装pc命令行工具,可通过创建一个新项目来测试安装是否成功。

将my_app_ame替换为自己的项目名称:

$mkdirmy_app_ame$cdmy_app_ame$pciit第一次运行此命令时,会自动下载并安装bu 。

此命令会在您的新目录中初始化模板应用程序,可以在开发模式下运行此应用程序:

$pcru应用程序将在 https://localhost:3000 上运行。现在可以修改my_app_ame/my_app_ame.py. 

Pyecoe具有快速刷新功能,可以在保存代码时立即看到更改。

功能介绍

Pynecone 是一个全栈 Python 框架,可以使用纯 Python 构建高性能、可自定义的 Web 应用程序。 Pynecone 应用程序示例 下面是一个围绕 DALL·E 创建 UI ...

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论