
About Pants
Pants is a build system for codebases of all sizes. It focuses on Python, Go, Java, Scala, Kotlin, Shell and Docker, with more languages planned.
What it does
Pants works out dependencies from your source code, so BUILD files can stay short. It runs only the tests and builds affected by a change, and it can compare the current branch with main. Lockfiles support repeatable builds across several dependency sets. A plugin API written in async Python lets teams add custom rules.
Key features
- Infers most dependencies from code
- Runs tests affected by Git changes
- Lockfiles for repeatable builds
- Plugin API for custom rules
- Several languages in one repository
Who it's for
Pants suits engineering teams with large codebases, monorepos and several languages. It is useful for platform teams that want consistent builds across many services.
Pricing and good to know
Pants is open source under the Apache-2.0 license. The project publishes docs, a reference and a community Slack for help. Adopting it takes some effort, because teams need to learn its configuration and build model before the benefits show up.
Highlights
- Infers most dependencies from source code
- Runs only tests affected by a change
- Lockfiles for repeatable builds
- Plugin API for custom rules












