Skip to content
@pact-foundation

Pact Foundation

The cross-language distributed contract testing framework.

Pact

Pact is the de-facto API contract testing tool. Replace expensive and brittle end-to-end integration tests with fast, reliable and easy to debug unit tests.
  • ⚡ Lightning fast
  • 🎈 Effortless full-stack integration testing - from the front-end to the back-end
  • 🔌 Supports HTTP/REST and event-driven systems
  • 🛠️ Configurable mock server
  • 😌 Powerful matching rules prevents brittle tests
  • 🤝 Integrates with Pact Broker / PactFlow for powerful CI/CD workflows
  • 🔡 Supports 12+ languages

Why use Pact? Contract testing with Pact lets you:

  • ⚡ Test locally
  • 🚀 Deploy faster
  • ⬇️ Reduce the lead time for change
  • 💰 Reduce the cost of API integration testing
  • 💥 Prevent breaking changes
  • 🔎 Understand your system usage
  • 📃 Document your APIs for free
  • 🗄 Remove the need for complex data fixtures
  • 🤷‍♂️ Reduce the reliance on complex test environments

Watch our series on the problems with end-to-end integrated tests, and how contract testing can help.

Pinned Loading

  1. roadmap roadmap Public

    Developer Relations @ Pact - Your map to the Pact landscape for all-comers (maintainers, contributors, users, newbies)

    44 7

  2. pact-specification pact-specification Public

    Describes the pact format and verification specifications

    315 29

  3. pact-reference pact-reference Public

    Reference implementations for the pact specifications

    Rust 101 51

  4. pact_broker pact_broker Public

    Enables your consumer driven contracts workflow

    Ruby 742 186

  5. pact-core-mock-server pact-core-mock-server Public

    In-process mock server for matching HTTP requests and generating responses from a pact file

    Rust 10 2

  6. pact-js pact-js Public

    JS version of Pact. Pact is a contract testing framework for HTTP APIs and non-HTTP asynchronous messaging systems.

    TypeScript 1.8k 351

Repositories

Showing 10 of 86 repositories
  • pact-ruby Public

    Enables consumer driven contract testing, providing a mock service and DSL for the consumer project, and interaction playback and verification for the service provider project.

    pact-foundation/pact-ruby’s past year of commit activity
    Ruby 2,193 MIT 219 3 (7 issues need help) 1 Updated Apr 21, 2026
  • pact_broker-client Public

    A Ruby and CLI client for the Pact Broker. Publish and retrieve pacts and verification results.

    pact-foundation/pact_broker-client’s past year of commit activity
    Ruby 69 MIT 49 2 7 Updated Apr 21, 2026
  • pact-python Public

    Python version of Pact. Enables consumer driven contract testing, providing a mock service and DSL for the consumer project, and interaction playback and verification for the service provider project.

    pact-foundation/pact-python’s past year of commit activity
    Python 662 MIT 147 14 (1 issue needs help) 6 Updated Apr 21, 2026
  • pact-jvm Public

    JVM version of Pact. Enables consumer driven contract testing, providing a mock service and DSL for the consumer project, and interaction playback and verification for the service provider project.

    pact-foundation/pact-jvm’s past year of commit activity
    Groovy 1,127 Apache-2.0 486 380 (1 issue needs help) 1 Updated Apr 21, 2026
  • pact-go Public

    Golang version of Pact. Pact is a contract testing framework for HTTP APIs and non-HTTP asynchronous messaging systems.

    pact-foundation/pact-go’s past year of commit activity
    Go 937 MIT 113 30 (1 issue needs help) 25 Updated Apr 21, 2026
  • roadmap Public

    Developer Relations @ Pact - Your map to the Pact landscape for all-comers (maintainers, contributors, users, newbies)

    pact-foundation/roadmap’s past year of commit activity
    44 MIT 7 64 4 Updated Apr 20, 2026
  • pact.io Public

    Pact Foundation Website

    pact-foundation/pact.io’s past year of commit activity
    HTML 219 88 12 (1 issue needs help) 42 Updated Apr 20, 2026
  • pact-js-core Public

    Core binaries for pact-js, a Contract Testing Framework. NOTE: If you are looking to do Pact contract testing in node, you almost certainly want pact-js, not pact-node.

    pact-foundation/pact-js-core’s past year of commit activity
    TypeScript 152 MIT 80 5 (1 issue needs help) 5 Updated Apr 20, 2026
  • pact-js Public

    JS version of Pact. Pact is a contract testing framework for HTTP APIs and non-HTTP asynchronous messaging systems.

    pact-foundation/pact-js’s past year of commit activity
    TypeScript 1,758 351 99 (13 issues need help) 31 Updated Apr 20, 2026
  • pact-php Public

    PHP version of Pact. Enables consumer driven contract testing, providing a mock service and DSL for the consumer project, and interaction playback and verification for the service provider project

    pact-foundation/pact-php’s past year of commit activity
    PHP 299 Apache-2.0 91 2 3 Updated Apr 20, 2026

Top languages

Loading…

Most used topics

Loading…