关于 monorepo
一份介绍 Nx、Turborepo、pnpm Workspaces 和 Lerna 的 monorepo 开发技能,涵盖任务编排、缓存、代码共享及 CI 实践。
主要功能
- 01Nx 依赖图与受影响任务
- 02Turborepo 任务流水线
- 03pnpm 工作区布局
- 04本地、远程和分布式缓存
- 05共享包与配置
- 06版本管理和 CI 实践
适用场景
- 01选择 monorepo 工具链
- 02配置构建与测试流水线
- 03在应用和包之间共享代码
- 04在 CI 中使用缓存和受影响任务
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ thebeardedbearsas/ claude-craft --skill monorepo安装后在 Claude Code 中输入/monorepo确认已加载。
详细介绍
Monorepo — Nx、Turborepo、pnpm Workspaces
现代化 Monorepo,支持分布式缓存和任务编排。
工具
Nx — 基于图、插件、企业级
Turborepo — 简单、快速、Vercel
pnpm workspaces — 轻量、快速
Lerna — 旧版(迁移)
Turborepo
{ "pipeline": {
"build": { "dependsOn": ["^build"], "outputs": ["dist/**"] },
"test": { "cache": true }
}}
pnpm turbo build # Cache
pnpm turbo test --filter=...@main
Nx
nx affected --target=build
nx graph
代码共享
monorepo/
├── packages/ (ui, utils, config)
├── apps/ (web, api, mobile)
import { Button } from '@monorepo/ui';
缓存
本地 — 开发 | 远程 — 团队(Vercel、Nx Cloud)| 分布式 — CI
npx turbo login && npx turbo link # Turborepo
npx nx connect-to-nx-cloud # Nx
pnpm Workspaces
packages: ['packages/*', 'apps/*']
最佳实践
原子化提交 | 版本管理(changesets)| CI(受影响范围)| 共享配置(根目录)
参见 @.claude/skills/tooling/SKILL.md
评论
支持 Markdown