这是一个基于 Turborepo+pnpm+changesets+dumi 搭建的 monorepo 多包组件库。
这个工程包含packages
及apps
每个包都是 100%的 TypeScript
docs
: 一个基于dumi2搭建的组件静态站点
eslint-config-custom
: 一个可被共享的自定义 eslint 配置,我们使用了 alloy 的规则,如果你需要自己拓展也没有问题tsconfig
: 一个可被共享的 tsconfig 配置文件,我们设置了 base 和 react-library 两个配置,当然你也可以自己定义utils
: 工具包ui
: UI 组件包
要开发所有应用程序和包,运行以下命令:
pnpm dev
你可以预览到 app 下的 docs 前端工程
要构建所有的应用和包,运行以下命令:
pnpm build
产物:
docs
——docs-distutils
——libui
——es、lib、dist
- 修改每个包的名称,前边的组织换成你需要的
- .npmrc 文件中的 registry 换成你的私有源
- 你修改了代码,并且测试通过
- git 提交代码到仓库
- 执行
pnpm build
进行编译 - 编译通过后执行
pnpm changeset
根据步骤进行版本管理、记录 changelog、commit 代码 - 执行
pnpm -r publish
进行发版