# Buildkite Monorepo Documentation > Buildkite documentation for building and managing monorepo CI/CD pipelines, including change detection, dynamic pipelines, and best practices. ## Pipelines ### Best practices - [Working with monorepos](https://buildkite.com/docs/pipelines/best-practices/working-with-monorepos.md): Static and dynamic approaches for running monorepo pipelines with change detection using if_changed and diff plugins. ### Tutorials - [Dynamic pipelines and annotations using Bazel](https://buildkite.com/docs/pipelines/tutorials/dynamic-pipelines-and-annotations-using-bazel.md): Tutorial for creating dynamic pipelines and build annotations using Bazel with a monorepo example project. ### Configure pipelines #### Step types - [Trigger step](https://buildkite.com/docs/pipelines/configure/step-types/trigger-step.md): Reference for trigger steps that create builds on other pipelines, with permissions, async mode, and attribute details. #### Dynamic pipelines - [Overview](https://buildkite.com/docs/pipelines/configure/dynamic-pipelines.md): Generating pipeline steps at runtime using scripts that output YAML/JSON and pipe to buildkite-agent pipeline upload. - [Using if_changed](https://buildkite.com/docs/pipelines/configure/dynamic-pipelines/if-changed.md): Using the if_changed step attribute to skip steps based on Git diff file changes, with glob patterns, monorepo workflows, and comparison strategies. - [Buildkite SDK](https://buildkite.com/docs/pipelines/configure/dynamic-pipelines/sdk.md): Multi-language SDK (JS, Python, Go, Ruby, C#) for programmatically generating dynamic pipeline steps. - [Using conditionals](https://buildkite.com/docs/pipelines/configure/conditionals.md): Using if/unless expressions with C-like syntax to conditionally run steps or filter pipeline builds from webhooks. - [Glob pattern syntax](https://buildkite.com/docs/pipelines/configure/glob-pattern-syntax.md): Syntax reference for glob patterns used in artifact uploads and if_changed step conditions. ## See also - [Buildkite Dynamic Pipelines Documentation](https://buildkite.com/docs/llms-dynamic-pipelines.txt): Buildkite documentation for dynamic pipelines, including runtime step generation, the Buildkite SDK, if_changed conditions, tutorials, and example pipelines. - [Buildkite Best Practices Documentation](https://buildkite.com/docs/llms-best-practices.txt): Buildkite documentation for CI/CD best practices, covering pipeline design and structure, agent management, Docker-based builds, parallelization, monorepos, dependency management, secrets, infrastructure as code, caching, monitoring, and security controls.