Hey! These docs are for version 2.0, which is no longer officially supported. Click here for the latest version, 2.7!

Welcome to Pants!

What is Pants?

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.

What are the main features of Pants?

Pants is designed for fast, consistent builds. Some noteworthy features include:

  • Dependency modeling with minimal boilerplate.
  • Fine-grained invalidation.
  • Shared result caching.
  • Concurrent execution.
  • Remote execution.
  • Unified interface for multiple tools and languages.
  • Extensibility and customizability via a plugin API.

Which languages and frameworks does Pants support?

Pants currently works with Python code, but support for other languages, including Javascript/Node, Java, Scala and more, is coming soon.

How does Pants work?

See here for details about the Pants engine.

Who develops Pants?

Pants is an open-source software project, developed at github.com/pantsbuild/pants. Pants is released under the Apache License 2.0.

📘

Pants 1.x vs. 2.x

This documentation is for Pants 2.0, which is a ground-up redesign of Pants based on lessons from the past 10 years of development. See here for Pants v1 documentation, which includes support for Node, Go, Java, and Scala.


Did this page help you?