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