Monorepo有助于保持一致性,但容易膨胀。对于小团队,将共享包限制在真正共享的内容上:UI令牌、API类型和小型工具。
用清晰的边界分离前端和后端应用。避免让构建相互等待的交叉导入。共享代码应该稳定且很少变更。
选择适合规模的工具。pnpm workspace + TypeScript项目引用通常就足够了。只有在CI流水线开始变慢时,Turborepo或Nx才有价值。
记录文件夹规范和依赖规则。没有约定,Monorepo很快就会变成每个人丢放"临时"文件的地方。
博客
如何在不让工具链对初创公司过于繁重的情况下组织应用程序、包和设计令牌。
Alim Rahman
Monorepo有助于保持一致性,但容易膨胀。对于小团队,将共享包限制在真正共享的内容上:UI令牌、API类型和小型工具。
用清晰的边界分离前端和后端应用。避免让构建相互等待的交叉导入。共享代码应该稳定且很少变更。
选择适合规模的工具。pnpm workspace + TypeScript项目引用通常就足够了。只有在CI流水线开始变慢时,Turborepo或Nx才有价值。
记录文件夹规范和依赖规则。没有约定,Monorepo很快就会变成每个人丢放"临时"文件的地方。