使用OpenUI智能生成专业级网页UI实现远程高效前端开发新手指南

news2025/1/16 6:56:36

文章目录

    • 前言
    • 1. 本地部署Open UI
      • 1.1 安装Git、Python、pip
      • 1.2 安装Open UI
    • 2. 本地访问Open UI
    • 3. 安装Cpolar内网穿透
    • 4. 实现公网访问Open UI
    • 5. 固定Open UI 公网地址

前言

今天给大家带来一篇非常实用的技术分享,介绍如何在Windows系统本地部署OpenUI,并结合Cpolar内网穿透工具配置公网地址,轻松实现随时随地远程访问本地部署的OpenUI智能生成前端代码。

OpenUI 是一个开放源代码项目,致力于创建一个可扩展、可定制且能够跨平台运行的用户界面框架。该项目的主要目标是提供一套标准化的组件库,帮助开发者更高效地构建响应式Web应用,同时保持对最新Web技术的兼容性和前瞻性。

OpenUI 的主要特点

  • 现代Web技术:OpenUI 基于HTML、CSS和JavaScript等现代Web技术,并特别支持React或Vue等前端框架。
  • 模块化设计:采用模块化的设计理念,允许开发者按需引入所需组件,从而大大减少代码体积。
  • Web Components技术:利用Web Components技术实现组件的封装和复用,使UI开发更加简洁高效。

在本例中,我们将在Windows系统上进行OpenUI的本地部署,并使用Cpolar内网穿透工具配置公网地址。以下是详细的步骤。

1. 本地部署Open UI

安装环境:Windows10,电脑上需安装gitPythonpip

1.1 安装Git、Python、pip

安装git:如果没有安装git的话,进入git官网进行下载windows版本 https://git-scm.com/downloads

image.png

安装Python:打开你的浏览器,访问 Python 官方网站 https://www.python.org/downloads/
在 Windows 上,你会看到两个选项:Windows installer 和 Windows x86-64 executable installer。如果你的系统是 64 位的,选择 “Windows x86-64 executable installer”;如果是 32 位的,选择 “Windows installer”。大多数现代计算机都是 64 位的。

安装pip

如果已经安装了 pip,它会显示 pip 的版本号。如果没有安装,你会收到一条类似 “pip 不是内部或外部命令” 的错误消息。

如果你发现没有安装 pip,你可以通过以下步骤来手动安装:
a. 首先,下载 get-pip.py 文件。你可以在浏览器中搜索 “get-pip.py”,然后找到 Python 官方网站上的下载链接。

b. 将 get-pip.py 文件保存到你的计算机上的某个目录中,比如你的用户文件夹。

c. 在命令提示符中,切换到保存 get-pip.py 文件的目录。你可以使用 `cd` 命令来切换目录,比如:

`cd C:\Users\YourUsername`

d. 运行以下命令来安装 pip:

`python get-pip.py`

这将运行 get-pip.py 文件,并安装 pip 到你的系统中。

安装完成后,你可以再次输入 pip --version 来检查 pip 是否成功安装。

现在,你已经成功在 Windows 命令行中安装了 pip,可以使用 pip 来安装 Python 包和库了。

1.2 安装Open UI

拉取代码

git clone https://github.com/wandb/openui

进入backend目录

cd openui/backend

安装依赖

pip install .

这里必须设置OPENAI_API_KEY;
如果你要使用OpenAI的模型,可以从https://platform.openai.com/api-keys 获取密钥
如果是要使用其他模型(电脑内存要大于16G),OPENAI_API_KEY可以设置为:xxx

export OPENAI_API_KEY=xxx

image.png

38bb145de210f82f96c7fcd5113f79a.png

启动后,访问 http://localhost:7878/ 即可使用。

2. 本地访问Open UI

打开一个新的浏览器,输入 localhost:7878 或本地IP:7878

0b8126701a2251554993e3251d5c884.png

我们可以在下方文本框中输入指令,比如:请帮我制作一个AI官网主界面

9fc085d69ca9a17b51ed9ab43b4cc71.png

可以看到生成了网页的模版格式,还可以任意发出其他指令,并且下面会有代码,可以拿去自己调试换成替换标签里的图片或者内容。

a0cdede74123b5568be239fa970dc9c.png

还有大量的模板可以直接使用

image.png

可以看到我们对Open UI提出指令,它会根据我们的指令提供相应的网页模版。

我们在本机成功部署了Open UI,但是如果我们需要不在局域网内,需要远程办公来设计前端网页的话,就要在公网上进行访问Open UI,那么我们就可以结合Cpolar内网穿透来实现了,免去了复杂得本地部署过程,只需要一个公网地址直接就可以进入到Open UI中。!

接下来教大家如何安装Cpolar并且将Open UI实现公网访问。

3. 安装Cpolar内网穿透

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

点击进入cpolar官网,点击免费使用注册一个账号,并下载最新版本的Cpolar

登录成功后,点击下载Cpolar到本地并安装(一路默认安装即可)本教程选择下载Windows版本。

image-20240319175308664

Cpolar安装成功后,在浏览器上访问http://localhost:9200,使用cpolar账号登录,登录后即可看到Cpolar web 配置界面,结下来在web 管理界面配置即可。

接下来配置一下 Open UI 的公网地址,

登录后,点击左侧仪表盘的隧道管理——创建隧道,

创建一个 Open UI 的公网http地址隧道

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:7878 (本地访问的地址)
  • 域名类型:免费选择随机域名
  • 地区:选择China Top

83690237b7cb9c2c4c98d3519f44505.png

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https

9a77e98f7601031aa4310f5a0904b30.png

使用上面的Cpolar https公网地址,在手机或任意设备的浏览器进行登录访问,即可成功看到 Open UI 界面,这样一个公网地址且可以远程访问就创建好了,使用了Cpolar的公网域名,无需自己购买云服务器,即可到公网访问 Open UI 了!

4. 实现公网访问Open UI

我们用刚才cpolar生成的公网地址,打开一个新的浏览器复制粘贴,可以看到进入到了Open UI主界面。

212f5c8c08374c8f0b12b0cd95d33b1.png

小结

如果我们需要长期进行团队协作的话,由于刚才创建的是随机的地址,24小时会发生变化。另外它的网址是由随机字符生成,不容易记忆。如果想把域名变成固定的二级子域名,并且不想每次都重新创建隧道来访问Open UI,我们可以选择创建一个固定的http地址来解决这个问题。

5. 固定Open UI 公网地址

我们接下来为其配置固定的HTTP端口地址,该地址不会变化,方便分享给别人长期查看你的博客,而无需每天重复修改服务器地址。

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称。

a00f7c9395515615d9df1e9b88c732b.png

保留成功后复制保留成功的二级子域名的名称

619da9eb7a14e9a237588ea8dc4ef4f.png
返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

c2a9208dac76420f52ebae233eb2c68.png

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

3c3221aea3e15e48a2c50172023bac8.png

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名

image.png

最后,我们使用固定的公网https地址在任何浏览器打开访问,可以看到访问Open UI成功了这样一个固定且永久不变的公网地址就设置好了。

85b712c9ab9aebc8603634648e5a8c7.png

通过以上步骤,你就可以在Windows系统上成功部署OpenUI,并结合Cpolar内网穿透工具实现远程访问。无论是个人开发还是团队协作,OpenUI都能帮助你更高效地构建高质量的Web应用。希望这篇文章对你有所帮助,如果有任何问题或建议,欢迎在评论区留言交流!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2244092.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3 虚拟列表组件库 virtual-list-vue3 的使用

Vue3 虚拟列表组件库 virtual-list-vue3 的基本使用 分享个人写的一个基于 Vue3 的虚拟列表组件库,欢迎各位来进行使用与给予一些更好的建议😊 概述:该组件组件库用于提供虚拟化列表能力的组件,用于解决展示大量数据渲染时首屏渲…

数据库中库的操作

数据库中库的操作 查看数据库语法 创建数据库语法⽰例创建⼀个名为test班级号的数据库⾃定义⼀个数据库名,如果数据库不存则创建重新运⾏上⾯的语句观察现象查看警告信息 字符集编码和校验(排序)规则查看数据库⽀持的字符集编码查看数据库⽀持的排序规则不同的字串集…

【MySQL-3】表的约束

目录 1. 整体学习的思维导图 2. 非空约束 3. default约束 4. No Null和default约束 5. 列描述 comment 6. Zerofill 7. 主键 primary key 复合主键 8. 自增长 auto_increment 9. 唯一键 10. 外键 11. 实现综合案例 1. 整体学习的思维导图 2. 非空约束 正如该标题一…

C++设计模式行为模式———迭代器模式

文章目录 一、引言二、迭代器模式三、总结 一、引言 迭代器模式是一种行为设计模式, 让你能在不暴露集合底层表现形式 (列表、 栈和树等) 的情况下遍历集合中所有的元素。C标准库中内置了很多容器并提供了合适的迭代器,尽管我们不…

自存 sql常见语句和实际应用

关于连表 查询两个表 SELECT * FROM study_article JOIN study_article_review 查询的就是两个表相乘,结果为两个表的笛卡尔积 相这样 这种并不是我们想要的结果 通常会添加一些查询条件 SELECT * FROM study_articleJOIN study_article_review ON study_art…

为自动驾驶提供高分辨率卫星图像数据,实例级标注数据集OpenSatMap

对于交通控制、自动驾驶等任务来说,大规模的高分辨率与更新频率的地图至关重要。现有的地图构建方法多依赖地面采集数据,这种方法的精度固然较高,但在覆盖范围、更新频率却存在限制,测绘成本也相当高昂。 相比之下,使…

基于STM32的智能语音识别饮水机系统设计

功能描述 1、给饮水机设定称呼,喊出称呼,饮水机回答:我在 2、语音进行加热功能,说:请加热,加热片运行 3、饮水机水位检测,低于阈值播报“水量少,请换水” 4、检测饮水机水温&#xf…

百度世界2024精选公开课:基于地图智能体的导航出行AI应用创新实践

11月12日,“百度世界2024”在上海世博中心举行。百度创始人、董事长兼首席执行官李彦宏发表了主题为《应用来了》的演讲。 百度地图也为大家带来了干货满满、精彩纷呈的智能体公开课,由百度地图开放平台技术架构师江畅分享《地图智能体:导航…

sourceInsight常用设置和功能汇总(不断更新)(RGB、高亮、全路径、鼠标、宏、TODO高亮)

文章目录 必开配置设置背景颜色护眼的RGB值?sourceInsight4.0中如何设置选中某个单词以后自动高亮的功能?sourceinsight中输入设置显示全路径? 常用sourceInsight4.0中文乱码怎么解决,注意事项是什么?如何绑定鼠标中键…

[JavaWeb] 尚硅谷JavaWeb课程笔记

1 Tomcat服务器 Tomcat目录结构 bin:该目录下存放的是二进制可执行文件,如果是安装版,那么这个目录下会有两个exe文件:tomcat10.exe、tomcat10w.exe,前者是在控制台下启动Tomcat,后者是弹出GUI窗口启动To…

uniapp开发微信小程序笔记2-开发静态页面(新建页面、内置组件、设置编译模式、样式、SCSS的使用)

前言:本文从新建页面、认识内置组件、设置编译模式、样式、SCSS的使用来逐步形成对微信小程序开发结构的认识 一、新建页面 pages就是放页面代码的文件夹,点击新建页面就可以自动新增页面,并且可以看到pages.json里面也会自动添加该页面的路…

Linux插件zsh(oh-my-zsh)

一、oh-my-zsh基本介绍 oh-my-zsh: https://github.com/ohmyzsh/ohmyzshhttps://github.com/ohmyzsh/ohmyzsh 注意:需要先安装zsh命令,才能安装oh-my-zsh,先测试是否安装了zsh rootserver:/opt # zsh --version zsh 5.8 (x86_6…

第7章硬件测试-7.4 专业实验

7.4 专业实验 7.4.1 EMC测试EMS的测试项目如下。1.静电放电抗扰度(ESD)2.辐射电磁场(80 MHz~1000 MHz)抗扰度(RS)3.电快速瞬变/脉冲群抗扰度4.浪涌(雷击)抗扰度5.注入电流&#xff0…

H.265流媒体播放器EasyPlayer.js H.264/H.265播放器chrome无法访问更私有的地址是什么原因

EasyPlayer.js H5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC、G711A、MP3等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方…

5G CPE与4G CPE的主要区别有哪些

什么是CPE? CPE是Customer Premise Equipment(客户前置设备)的缩写,也可称为Customer-side Equipment、End-user Equipment或On-premises Equipment。CPE通常指的是位于用户或客户处的网络设备或终端设备,用于连接用户…

Vue 专属状态管理库Pinia的使用与实践

目录 前言1. 什么是 Pinia?2. Pinia 的安装与基本配置2.1 安装 Pinia2.2 在 Vue 应用中配置 Pinia 3. 使用 Pinia 创建和管理状态3.1 定义一个简单的 Store3.2 在组件中使用 Store 4. Pinia 的高级功能4.1 使用 Getter 简化数据处理4.2 支持异步操作4.3 在服务端渲染…

如何基于Netty手写简单的Tomcat?

如何基于Netty手写简单的Tomcat? 我们最常用的服务器是tomcat ,我们使用tomcat 也主要作为http服务器 。 http协议是基于TCP 协议,换句话说使用socket 或者 NIO编程,只要能正确的解析http报文,然后将结果按照 http 报…

RabbitMQ教程:发布/订阅模式(Publish/Subscribe)(三)

文章目录 RabbitMQ教程:发布/订阅模式(Publish/Subscribe)(三)一、引言二、简介三、准备工作3.1 说明3.2 生成项目 四、实战4.1 交换机(Exchanges)4.2 临时队列(Temporary Queues&am…

金山云Q3调整后EBITDA率提升至9.8% 经营效率和盈利能力强劲增长

11月19日,金山云公布了2024年第三季度业绩。 季度内,公司在收入规模、盈利能力、经营现金流方面都取得了扎实的进展。财报显示,金山云Q3营收18.9亿元,同比回归两位数快速增长,达16.0%;公有云实现收入11.8亿…

Python轴承故障诊断 (19)基于Transformer-BiLSTM的创新诊断模型

往期精彩内容: Python-凯斯西储大学(CWRU)轴承数据解读与分类处理 Pytorch-LSTM轴承故障一维信号分类(一)-CSDN博客 Pytorch-CNN轴承故障一维信号分类(二)-CSDN博客 Pytorch-Transformer轴承故障一维信号分类(三)-CSDN博客 三十多个开源…