koot
koot copied to clipboard
CLI 想法
koot-cli
- [新] 管理当前项目 (默认选项)
- 一级信息 (UI突出显示)
- 项目名
- 项目类型
- 是否多语言
- 是否 Service Worker
- 是否 PWA
- 文档链接
- Whatever 卡片
- 开发
- 开启开发环境 (显示命令)
- 用 VS Code 打开项目
- 开发环境配置
- 诊断
- 测试生产环境打包 (analyze)
- 启动生产环境并运行 koot-diagnose
- 配置
- 基本
- 项目名
- 项目类型
- 线上环境地址
- 多语言
- service worker
- pwa 信息
- 渲染模板
- 路由 (等 router 更新后开放)
- store
- webpack
- 客户端
- 服务器端
- 开发环境
- 基本
- 图标包
- 利用 FS API 读写项目内图标包文件 (通过 koot 配置自动选择静态文件目录)
- 开发环境加入一段自动轮询脚本,热更新图标包
- 拖放图标添加,可删除
- 计划
- Whatever 卡片
- 一级信息 (UI突出显示)
koot-manager
Electron 程序 管理本地的 Koot 项目
- 手动添加
- 在 App 里新建 单个项目的管理使用 koot-cli 的管理页
- 由于使用了 Electron 所以有很多专属能力,如直接运行命令行启动开发环境,打开项目目录 可登录到 CM OA
- 通过匹配内部项目数据库,得知哪些项目是 CM 项目
- 针对 CM 项目,扩展管理页
- 负责人联系方式
- 线上地址的诊所结果页
- 服务器检测/报表
项目管理建议还是使用cli工具,更加轻量方便,而且electron的一些功能也可以完成; 还有之前分享的docker的问题,还是想把这些东西集成于docker
@chenyuanguang 这个设计里,针对当前项目的管理可以通过 CLI,Electron 只不过有高级功能(主要是通过浏览器做不了的东西)
docker 那个,更多的是开发环境的问题?
CLI 加入图标包管理
预想流程
粗体选项表示默认选项
(*) 表示必要字段,如果无输入,整个流程结束
每条开头的标记表示当前的完成情况
- [x] 检查是否处在 CM 内网
- [ ] 如果处在 CM 内网,要求登录 OA
- 记录用户名和密码到本地临时目录中,CLI 流程结束时删除
- [x] (*) 询问: 项目名
- [x] 询问: 项目描述
- [x] 选择: 项目类型
- SSR
- SPA
- [x] 选择: 模板类型
- 基础 Web
- Serverless
- [CM专属] 后台管理系统
- [ ] 如果不处在 CM 内网,询问: 开发者
- [x] 指定项目目录,默认为当前路径下的项目名目录
- [ ] 询问: 代码仓库地址
- [ ] 如果处在 CM 内网且没有提供 GitLab 地址,询问: GitLab 项目名,之后利用之前暂存的用户名和密码直接登录 GitLab 创建项目
- [ ] 如果处在 CM 内网,创建 Whatever 卡片
- [ ] 如果有 Git 地址,询问: 生产代码分支 dist
- [x] 选择: 包管理
- Yarn (v1)
- Yarn v2 (警告可能不兼容)
- NPM
- [ ] 如果有 Git 地址,拉取代码
- 如果出错,询问是否继续
- [x] 下载模板
- [x] 复制模板到项目目录
- [x] 使用选择的包管理器安装依赖
- [ ] 调整模板
-
package.json
- [x] 项目名
- [x] 项目描述
- [x] 开发者
- [ ] 版本号
- [ ] 如果有 Git 地址,添加
push
命令
-
koot.config.js
- 先
require('koot.config.js')
确定用于替换的正则表达式 - [x] 项目名(如果有)
- [x] 项目类型
- [x]
serverless
- [ ] 如果有 Git 地址,初始化
koot-push
相关选项,用以快速提交打包代码
- 先
-
- [x] 输出后续操作指南
some improvements