turborepo
Originally fromvercel/turborepo
Installation
Summary
Monorepo build system with intelligent task caching and parallel execution based on dependency graphs.
- Caches task outputs and orchestrates execution order using
turbo.jsonconfiguration; supports remote caching for CI/CD pipelines - Filters and runs only affected packages with
--affectedflag; enables selective builds across monorepos with multiple apps and libraries - Enforces package-level task definitions (not root-level) to maximize parallelization; provides
dependsOnsyntax for declaring task dependencies andoutputsfor cache invalidation - Includes environment variable hashing, watch mode for development, and package boundary enforcement to prevent unwanted cross-package imports
SKILL.md
Turborepo Skill
Build system for JavaScript/TypeScript monorepos. Turborepo caches task outputs and runs tasks in parallel based on dependency graph.
IMPORTANT: Package Tasks, Not Root Tasks
Prefer package tasks over Root Tasks.
When creating tasks/scripts/pipelines, you MUST default to package tasks:
- Add the script to each relevant package's
package.json - Register the task in root
turbo.json - Root
package.jsononly delegates viaturbo run <task>
DO NOT put task logic in root package.json when it can live in packages. This defeats Turborepo's parallelization.