rat-cli

基于Github/GitLab快速创建项目/模块/页面的脚手架;

Npm package NPM downloads

简体中文 English

安装

npm i -g @samyzh/rat-cli
#或者
yarn global add @samyzh/rat-cli

支持

使用

rat/rat-cli init tpl/blk/deploy
rat tpl/blk config set <k> <v>
rat tpl/blk config get <k>
rat tpl/blk config remove <k>
rat tpl/blk install
rat tpl/blk uninstall
rat tpl/blk update
rat tpl/blk list
rat tpl/blk search
rat deploy

项目/模块/页面命令

【CRUD】

默认模板

关于exts

增加exts接口目录,其中放置 ask.js, hook.js, 方便扩展,若没有则使用内置的;

ask.js :可以是数组, 可以是一个返回数组的方法;遵循 Inquirer prompt参数

hook.js :目前只提供生成成功后方法也就是after,提供给开发者作扩展用。after函数,可以是async function, 返回Promise实例的函数,普通函数。

内置的ask.js ,项目模板用的ask;

内置的askblk.js,模块及页面用的ask;

模板说明

离线路径

模板规则

模板项目命名规则,要按照这个规则,要不然搜索匹配不到项目;

默认模板

bdp-tpl

项目技术栈模板;

类型 技术栈 描述 备注
adm-tpl-react react, antd-4.x,antd-pro5.x 管理  
adm-tpl-vue vue,antd-vue 管理  
mod-tpl-vue vue, vant h5  

bdp-blk

目前基于上云bdp-tpl-sub 的业务组件,通过脚手架快速创建;

类型 技术栈 归属项目 描述 备注
module-base-blk react bdp-tpl-sub 基模块  
page-base-blk react bdp-tpl-sub 基本页面  
page-table-cate react bdp-tpl-sub 列表组件  
page-table-card react bdp-tpl-sub 列表卡片切换组件  
page-card-cate react bdp-tpl-sub 卡片组件  
page-rowcard-list react bdp-tpl-sub 卡片列表组件  
page-form react bdp-tpl-sub 表单组件  
page-steps react bdp-tpl-sub 步骤组件  

配置模板,支持上传或者下载功能;

运行 bdp init deploy, 生产部署配置后,再修改相关配置,后再运行bdp deploy 部署;

zdeploy.json

[
  {
    "type": "upload",
    "name": "开发环境",
    "host": "127.0.0.1",
    "port": "22",
    "username": "",
    "password": "",
    "localCmd": "npm run build && zip -r dist.zip dist/",
    "serverCmd": "cd /home/deploy/fe-deploy/ && mv dist/ dist-bak/",
    "localScp": "dist.zip",
    "serverScp": "/home/deploy/fe-deploy/dist.zip",
    "serverHookCmd": "cd /home/deploy/fe-deploy/ && unzip dist.zip",
    "localHookCmd": ""
  },
  {
    "type": "download",
    "name": "生产环境",
    "host": "127.0.0.2",
    "port": "2222",
    "username": "deploy",
    "password": "xxx",
    "localCmd": "zip -r dist.zip dist/ && mv dist.zip dist-bak.zip",
    "serverCmd": "cd /home/deploy/fe-deploy/ && zip -r dist.zip dist/",
    "localScp": "./",
    "serverScp": "/home/deploy/fe-deploy/dist.zip",
    "serverHookCmd": "",
    "localHookCmd": "unzip dist.zip"
  }
]

演示

TODO

更新日志

详见