Pants is a scalable build system for monorepos: codebases containing multiple projects—often using multiple programming languages and frameworks—in a single unified code repository.
Monorepos have many advantages, but they require appropriate tooling in order to scale. Pants provides this tooling.
This documentation is for Pants v2 only. See here for Pants v1 documentation.
Pants is designed for fast, consistent builds. Some noteworthy features include:
- Explicit dependency modeling.
- Fine-grained invalidation.
- Shared result caching.
- Concurrent execution.
- Remote execution.
- Unified interface for multiple tools and languages.
- Extensibility and customizability via a plugin API.
Pants v1 already supports JS/Node, Java, Scala, Go and more. See here for details. This documentation is for Pants v2 only.
Updated 21 days ago