• Stars
    star
    7,620
  • Rank 5,028 (Top 0.1 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created almost 7 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

阿里妈妈前端团队出品的开源接口管理工具RAP第二代

RAP2-DELOS 开源社区版本 (后端 API 服务器)

阿里妈妈 THX 团队新项目 GoGoCode:https://github.com/thx/gogocode 给批量修改项目代码减轻痛苦!

RAP2 是在 RAP1 基础上重做的新项目,它能给你提供方便的接口文档管理、Mock、导出等功能,包含两个组件(对应两个 Github Repository)。

  • rap2-delos: 后端数据 API 服务器,基于 Koa + MySQLlink
  • rap2-dolores: 前端静态资源,基于 React link

Rap 官方服务站点,无需安装直接体验: rap2.taobao.org

Rap 官方服务站点(rap2.taobao.org)系统维护完成相关编辑功能已恢复使用

注意:本工具为开发工具,相关API未做任何XSS等安全验证,请勿在生产环境依赖RAP的任何服务!!!

有急事来官方钉钉群,响应更迅速: 31626736 (二群,一群已满)

2019-10-31:现已支持 Docker 一键部署,欢迎大家体验&反馈

2019-09-27:更新的用户请注意按照下面指引安装 pandoc 以启用文档导出功能

推荐使用 Docker 快速部署

安装 Docker

国内用户可参考 https://get.daocloud.io/ 安装 Docker 以及 Docker Compose (Linux 用户需要单独安装),建议按照链接指引配置 Docker Hub 的国内镜像提高加载速度。

配置项目

在任意地方建立目录 rap

把本仓库中的 docker-compose.yml 放到 rap 目录中

Rap 前端服务的端口号默认为 3000,你可以在 docker-compose.yml 中按照注释自定义

在 rap 目录下执行下面的命令:

# 拉取镜像并启动
docker-compose up -d

# 启动后,第一次运行需要手动初始化mysql数据库
# ⚠️注意: 只有第一次该这样做
docker-compose exec delos node scripts/init

# 部署成功后 访问
http://localhost:3000 # 前端(可自定义端口号)
http://localhost:38080 # 后端

# 如果访问不了可能是数据库没有链接上,关闭 rap 服务
docker-compose down
# 再重新运行
docker-compose up -d
# 如果 Sequelize 报错可能是数据库表发生了变化,运行下面命令同步
docker-compose exec delos node scripts/updateSchema

⚠️注意:第一次运行后 rap 目录下会被自动创建一个 docker 目录,里面存有 rap 的数据库数据,可千万不要删除。

镜像升级

Rap 经常会进行 bugfix 和功能升级,用 Docker 可以很方便地跟随主项目升级

# 拉取一下最新的镜像
docker-compose pull
# 暂停当前应用
docker-compose down
# 重新构建并启动
docker-compose up -d --build
# 有时表结构会发生变化,执行下面命令同步
docker-compose exec delos node scripts/updateSchema
# 清空不被使用的虚悬镜像
docker image prune -f

手动部署

环境要求

  • Node.js 8.9.4+
  • MySQL 5.7+
  • Redis 4.0+
  • pandoc 2.73 (供文档生成使用)

开发模式

安装 MySQL 和 Redis 服务器

请自行查找搭建方法,mysql/redis 配置在 config.*.ts 文件中,在不修改任何配置的情况下, redis 会通过默认端口 + 本机即可正常访问,确保 redis-server 打开即可。

注意:修改 cofig 文件后需要重新 npm run build 才能生效

安装 pandoc

我们使用 pandoc 来生成 Rap 的离线文档,安装 Pandoc 最通用的办法是在 pandoc 的 release 页面下载对应平台的二进制文件安装即可。

其中 linux 版本最好放在/usr/local/bin/pandoc 让终端能直接找到,并执行 chmod +x /usr/local/bin/pandoc 给调用权限。

测试在命令行执行命令 pandoc -h 有响应即可。

启动redis-server

redis-server

后台执行可以使用 nohup 或 pm2,这里推荐使用 pm2,下面命令会安装 pm2,并通过 pm2 来启动 redis 缓存服务

npm install -g pm2
npm run start:redis

先创建创建数据库

mysql -e 'CREATE DATABASE IF NOT EXISTS RAP2_DELOS_APP DEFAULT CHARSET utf8 COLLATE utf8_general_ci'

初始化

npm install

confirm configurations in /config/config.dev.js (used in development mode),确认/config/config.dev.js 中的配置(.dev.js 后缀表示用于开发模式)。

安装 && TypeScript 编译

npm install -g typescript
npm run build

初始化数据库表

npm run create-db

执行 mocha 测试用例和 js 代码规范检查

npm run check

启动开发模式的服务器 监视并在发生代码变更时自动重启

npm run dev

生产模式

# 1. 修改/config/config.prod.js中的服务器配置
# 2. 启动生产模式服务器
npm start

社区贡献

Author

Tech Arch

  • 前端架构(rap2-dolores)
    • React / Redux / Saga / Router
    • Mock.js
    • SASS / Bootstrap 4 beta
    • server: nginx
  • 后端架构(rap2-delos)
    • Koa
    • Sequelize
    • MySQL
    • Server
    • server: node

旧版本升级

-数据库数据迁移  RAP2 2.4迁移到2.8
  由于数据库表有主外键,按以下顺序插入数据
  1.Users
  2.Organizations
  3.Repositories
  4.repositories_members(备注:将createdAt、updatedAt两个字段必填去除)
  5.organizations_members
  6.Modules
  7.Interfaces
  8.Loggers
  9.Properties(备注:将数据scope字段的所有''值替换成'String')
  default_val和repositories_collaborators表无数据无需处理

More Repositories

1

RAP

Web接口管理工具,开源免费,接口自动化,MOCK数据自动生成,自动化测试,企业级管理。阿里妈妈MUX团队出品!阿里巴巴都在用!1000+公司的选择!RAP2已发布请移步至https://github.com/thx/rap2-delos
JavaScript
10,573
star
2

gogocode

GoGoCode is a transformer for JavaScript/Typescript/HTML based on AST but providing a more intuitive API.
JavaScript
5,408
star
3

rap2-dolores

TypeScript
609
star
4

iconfont-plus

新版iconfont仓库,代码暂时不具备开源的条件。主要作为issues的仓库,不排除以后直接把代码在此开源。
466
star
5

cube

跨终端、响应式、低设计耦合的CSS解决方案
SCSS
422
star
6

magix

Magix is designed to construct large scaled,complex interactions app.
JavaScript
420
star
7

chartx

Data Visualization Solutions
JavaScript
223
star
8

magix-combine

按占位符规则把html、css文件打包进js文件
JavaScript
152
star
9

magix-inspector

magix项目调试分析工具
JavaScript
135
star
10

magix-project

magix示例项目
JavaScript
126
star
11

magix-loader

webpack loader
JavaScript
121
star
12

magix-gallery

magix gallery
HTML
107
star
13

magix-os

基于Magix开发的web桌面系统
JavaScript
103
star
14

thx.github.io

The Gateway
HTML
99
star
15

rapper

一个自带类型的请求库
TypeScript
96
star
16

bisheng

BI-Directional / Two-Way Data-Binding Library
JavaScript
67
star
17

canvax

canvas library
JavaScript
48
star
18

image_grabber

Image Grabber
JavaScript
45
star
19

brix-bisheng

纯粹的数据双向绑定库。
JavaScript
42
star
20

vscode-magix

vscode 上的 Magix 开发插件,提升你的开发体验!
TypeScript
42
star
21

html-code-guide

HTML Code Guide
35
star
22

brix-core

Brix Core
JavaScript
25
star
23

crox

JavaScript
22
star
24

brix-loader

Brix 组件加载器
JavaScript
19
star
25

thx-portal-rule

可视化规则编辑器
TypeScript
15
star
26

kslite

一个小巧精致的加载器
JavaScript
11
star
27

brix-components

Brix 组件仓库
JavaScript
9
star
28

FE-tools

项目辅助chrome插件
JavaScript
9
star
29

vscode-gogocode

use code to refactor your code easily
TypeScript
8
star
30

magix-demo-ad

广告系统DEMO
JavaScript
7
star
31

thx-cli

THX CLI
TypeScript
6
star
32

magix-cli-book

magix-cli gitbook文档
6
star
33

brix-animation

brix声明式动画
JavaScript
6
star
34

magix-bp

Tutorial application of Magix
JavaScript
5
star
35

RAP.node

RAP node server
JavaScript
5
star
36

gogocode-starter

gogocode starter
JavaScript
4
star
37

brix-spec

CSS
4
star
38

brix-event

支持 bx-type 风格的事件模型,实现事件与与 DOM 结构的松耦合,提升可读性、可复用性和可测试性。
JavaScript
4
star
39

magix-doc3

magix3.x doc
JavaScript
3
star
40

aliminiapp-pixiv6-demo

手淘小程序PIXIJS v6互动引擎使用样例
JavaScript
3
star
41

magix5-gallery

magix5组件库
JavaScript
2
star
42

brix-style

Brix Style - Foundation
JavaScript
2
star
43

magix-composer

compile html, style and javascript files into javascript
JavaScript
2
star
44

gitbook-to-gh-pages

本地gitbook同步发布到github pages工具
JavaScript
2
star
45

base

Base of THX websites
CSS
2
star
46

magix-api

magix api
CSS
1
star
47

animore

JavaScript
1
star
48

magix-hmr

magix hot module replacement
JavaScript
1
star
49

thx-scripts

微前端构建工具,内置支持 Webpack5 模块邦联(Module Federation)。
TypeScript
1
star
50

magix-demo-ppt

2012.12月1.0刚完成时的总结,不适用于cdn上的1.0
1
star
51

brix-site

已废弃,请访问
HTML
1
star
52

auto-open-chrome

auto open chrome
AppleScript
1
star