turborepo
The Turborepo skill provides guidance on configuring monorepo build systems, task pipelines, caching strategies, and architectural boundaries using Turborepo.
Is turborepo safe to install?
Safe to install: our audit of turborepo's source files found 7 shell commands, 0 external URLs, file reads and writes (low risk). Every command and URL listed appears verbatim in the skill's source. The skill reads local configuration files like turbo.json and package.json to provide guidance. It does not perform network requests.
How we audit skills: our security review methodology.
Who is this skill for?
Developers and DevOps engineers managing JavaScript or TypeScript monorepos with Turborepo.
What can you do with it?
- Configuring task pipelines and dependencies
- Optimizing CI workflows
- Debugging cache misses and hash inputs
- Structuring monorepo packages and workspaces
- Enforcing architectural boundaries between packages
- Setting up environment variables for build tasks
How good is this skill?
Quality score: 5/10. The skill provides clear, actionable guidance with specific code examples for common Turborepo patterns and anti-patterns.
What does the skill file contain?
# 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: 1. Add the script to each relevant package's `package.json` 2. Register the task in root `turbo.json` 3. Root `package.json` only delegates via `turbo run <task>` **DO NOT** put task logic in root `package.json` when it can live in packages. This defeats Turborepo's parallelization...
Frequently asked questions
Should I define task logic in the root package.json?
No. Root package.json should only delegate tasks to Turborepo using 'turbo run <task>'. Task logic belongs in individual package scripts.
How do I run tasks only for changed packages?
Use the '--affected' flag with 'turbo run <task> --affected' to compare against the default branch and include dependents.
When should I use 'turbo run' versus 'turbo'?
Use 'turbo run' for all scripts in package.json and CI pipelines. Use the 'turbo' shorthand only for one-off terminal commands.
How do I prevent tasks from bypassing the dependency graph?
Avoid using the '--parallel' flag and do not chain tasks with '&&'. Configure 'dependsOn' in turbo.json to let Turborepo orchestrate execution.
Related skills
github-actions-docs
264.6KDevelopers and DevOps engineers working with GitHub Actions workflows
The github-actions-docs skill provides grounded answers to GitHub Actions queries by retrieving information from official GitHub documentation. It assists with workflow syntax, security, migration, and runner configuration.
developing-genkit-js
50.1KDevelopers building AI agents, flows, and tools using the Genkit framework in JavaScript or TypeScript environments
This skill provides guidance for developing AI-powered applications using Genkit in Node.js and TypeScript. It enforces a strict troubleshooting protocol that prioritizes reading local documentation via the Genkit CLI over internal knowledge to account for recent breaking API changes.
react-email
6.0KDevelopers building transactional or marketing emails who want to use React components and Tailwind CSS for styling
React Email provides a framework for building and sending HTML emails using React components. It includes a development server for previewing templates, a library of email-specific components, and an embeddable visual editor.
marketing-pipeline-ai-content-automation
501Marketing teams and developers building automated content workflows
This skill provides a TypeScript-based automation pipeline that crawls news sources, generates marketing content using Claude or OpenAI, and renders videos with Remotion.