Skip to content

Latest commit

 

History

History

docs

Siu

codecov build language version MIT

取名siu,灵感来自C罗进球后的那声siu...

@siujs/cli是一个基于Monorepo+Typescript为主基调风格的插件化前端脚手架, 让类库开发亦或多项目开发场景的人员更轻松也更自由;

区别

siu不像vue-clicreate-scripts等其他比较成熟的cli工具去专项做某些事情;

  • 优势

    • 简单:它只是一个集中地,他把控制权基本上都交给插件,由插件去发挥想象,自身只提供简单的辅助 api 和总的流程控制;
    • 强扩展性:完全可以将vue-clicreate-scripts包装成siu的插件来接入
    • 天然支持Monorepo
  • 劣势

    • 适用的项目类型只有 Monorepo 风格的

脚手架设计

模块 描述
core 整个脚手架的核心包,负责配置文件的解析、插件的定义、插件的装载、插件的执行等
utils 脚手架的辅助函数集合模块
builtin-build 内置基于rollup+esbuild+@microsoft/api-extractor的打包器
builtin-deps 内置dependencies|devDependencies的依赖安装/卸载处理(针对monorepo项目)
builtin-githooks 内置git client hooks的包装 ,主要配合husky
支持pre-commitprepare-commit-msgcommit-msgpost-commitpost-merge
builtin-publish 内置模块发布包,支持independent模式以及制定特殊
cli-init 专门执行项目初始化的模块
cli 对接 CLI 控制台的模块

依赖关系如下图:

依赖关系图