Yao 是一款 Go 语言驱动的低代码应用引擎,通过编写 JSON 描述即可快速制作 API 接口,数据管理系统 ,命令行工具 等应用程序,应用可以运行在本地、云端和物联网设备上。
官方网站: https://yaoapps.com
文档地址: https://yaoapps.com/doc
Yao 基于 flow-based 编程思想,采用 Go 语言开发,支持多种方式扩展数据流处理器。这使得 Yao 具有极好的通用性,大部分场景下可以代替编程语言, 在复用性和编码效率上是传统编程语言的 10 倍;应用性能和资源占比上优于 PHP, JAVA 等语言。
Yao 内置了一套数据管理系统,通过编写 JSON 描述界面布局,即可实现 90% 常见界面交互功能,特别适合快速制作各类管理后台、CRM、ERP 等企业内部系统。对于特殊交互功能亦可通过编写扩展组件或 HTML 页面的方式实现。内置管理系统与 Yao 并不耦合,亦可采用 VUE, React 等任意前端技术实现管理界面。
一套通用 CRM 管理系统
云+边物联网应用示例,支持人脸识别、RFID 的无人值守智能仓库管理系统。
注意
- 开始前需要了解 JSON、RESTFul API、关系型数据库的基本概念和常识,并可以使用常见终端命令。
- 如需处理非常复杂的业务逻辑,则需要掌握 JavaScript 语言。
在终端下运行脚本: ( MacOS / Linux )
curl -fsSL https://website.yaoapps.com/install.sh | bash
新建一个项目目录,进入项目目录,运行 yao init
命令,创建一个空白的 Yao 应用。
mkdir -p /data/crm # 创建项目目录
cd /data/crm # 进入项目目录
yao init # 运行初始化程序
命令运行成功后,将创建 app.json文件
, db
, ui
, data
等目录
├── data # 用于存放应用产生的文件,如图片,PDF等
├── db # 用于存放 SQLite 数据库文件
│ └── yao.db
└── ui # 静态文件服务器文件目录,可以放置自定义前端制品,该目录下文件可通过 http://host:port/文件名称 访问。
└── app.json # 应用配置文件, 用来定义应用名称等
使用 yao migrate
命令创建数据表,打开命令行终端,在项目根录下运行:
yao migrate
初始化菜单
yao run flows.setmenu
打开命令行终端,在项目根录下运行:
yao start
-
打开浏览器, 访问
https://127.0.0.1:5099/xiang/login/admin
, -
输入默认用户名:
xiang@iqka.com
, 密码:A123456p+
Yao 的名字源于汉字爻(yáo),是构成八卦的基本符号。八卦,是上古大神伏羲观测总结自然规律后,创造的一个可以指代万事万物的符号体系。爻,有阴阳两种状态,就像 0 和 1。爻的阴阳转换,驱动八卦更替,以此来总结记录事物的发展规律。