Monorepo Management

aj-geddes/useful-ai-prompts/skills/monorepo-management

作者 aj-geddes3f5182cfd739无许可证355 个星标收录于 2026年10月8日更新于 2026年10月8日仓库7个月前更新

Manage monorepo architectures using Lerna, Turborepo, and Nx. Configure workspaces, dependency versioning, and cross-package testing.

AI 生成的概览

指导使用 Lerna、Turborepo 和 Nx 搭建与管理 monorepo,涵盖工作区、版本管理和 CI 流水线。

功能
提供多包仓库结构、npm workspaces、Lerna、Turborepo 与 Nx 配置、跨包依赖版本管理以及 CI/CD 构建协调的参考指南。附带一个流水线模板和一个用于校验流水线配置的脚本。产出为文档与配置指导,而非应用代码。
适用场景
适用于搭建或维护包含多个相互依赖包、共享库或微服务的 monorepo。也适合统一工作区依赖管理、版本策略以及跨包的 CI 构建过滤。
运行要求
需要 JavaScript/Node.js 工具链,以及 Lerna、Turborepo 或 Nx 等 monorepo 工具之一。附带可执行 shell 脚本(scripts/validate-pipeline.sh)和流水线模板;用于 CI/CD 时需要可访问流水线运行环境。

Monorepo Management

Table of Contents

Overview

Establish scalable monorepo structures that support multiple interdependent packages while maintaining build efficiency, dependency management, and deployment coordination.

When to Use

  • Multi-package projects
  • Shared libraries across services
  • Microservices architecture
  • Plugin-based systems
  • Multi-app platforms (web + mobile)
  • Workspace dependency management
  • Scaled team development

Quick Start

Minimal working example:

json
{  "name": "monorepo-root",  "version": "1.0.0",  "private": true,  "workspaces": ["packages/*", "apps/*"],  "devDependencies": {    "lerna": "^7.0.0",    "turbo": "^1.10.0"  },  "scripts": {    "lint": "npm run lint -r",    "test": "npm run test -r",    "build": "npm run build -r",    "clean": "npm run clean -r"  }}

Reference Guides

Detailed implementations in the references/ directory:

GuideContents
Npm Workspaces Configuration [blocked]Npm Workspaces Configuration, Lerna Configuration, Turborepo Configuration, Nx Workspace Configuration
Monorepo Directory Structure [blocked]Monorepo Directory Structure
Workspace Dependencies [blocked]Workspace Dependencies
Lerna Commands [blocked]Lerna Commands
Turborepo Commands [blocked]Turborepo Commands
CI/CD for Monorepo [blocked]CI/CD for Monorepo
Version Management Across Packages [blocked]Version Management Across Packages

Best Practices

✅ DO

  • Use workspace protocols for dependencies
  • Implement shared tsconfig for consistency
  • Cache build outputs in CI/CD
  • Filter packages in CI to avoid unnecessary builds
  • Hoist common dependencies
  • Document workspace structure
  • Use consistent versioning strategy
  • Implement pre-commit hooks across workspace
  • Test cross-package dependencies
  • Version packages independently when appropriate

❌ DON'T

  • Create circular dependencies
  • Use hardcoded versions for workspace packages
  • Build all packages when only one changed
  • Forget to update lock files
  • Ignore workspace boundaries
  • Create tightly coupled packages
  • Skip dependency management
  • Use different tooling per package

来源与署名

来源:aj-geddes/useful-ai-prompts位于skills/monorepo-management提交3f5182c

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架