Suggest a tool

Pact JS vs Pact-JVM: open-source contract testing tools compared

Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.

Summary

Pact JS: Node.js library for Pact contract tests, with the PactV3 consumer API and Verifier class in the @pact-foundation/pact npm package.

Pact-JVM: JVM library for Pact contract tests with JUnit, Spring, Gradle and Maven support, covering specification V4.

Both are listed under Contract testing. The table gives repository metrics from the GitHub API with their fetch date, then the documented facts used for every comparison in this category, each linked to the README or docs page it comes from. A cell reads "not documented" when the fact was not found in the project's documentation; that does not mean the feature is absent.

Side by side

Pact JS and Pact-JVM: metrics and documented facts, in the fixed row order used for contract testing comparisons.
FactPact JSPact-JVM
Stars1,81511,1451
Forks35714931
Contributors12312521
Last release2026-09-0712026-08-101
Last commit2026-09-2212026-09-211
Commits in 90 days1101291
LicenseMIT1Apache-2.01
Primary languageTypeScript1Kotlin1
Statusactive1active1
Languages for writing testsJavaScript on Node.js (Node 16+ as of pact-js v12) source: READMEJVM languages: Java, Groovy, Kotlin; Scala via pact4s; Clojure through the JUnit library source: README
Contract or spec formatsPact specification versions 2, 3 and 4 (pact-js 10.x and later) source: READMEPact specification V4 with plugins (4.7.x branch) source: README
ProtocolsHTTP/REST and event-driven systems source: READMEHTTP; message queue interactions (V3 message pacts) source: README
CI integrationCI/CD workflows through Pact Broker source: READMEMaven plugin links verification results to a CI build URL (pact.verifier.buildUrl) source: Docs: Maven plugin
Install methodnpm (npm install --save-dev @pact-foundation/pact) source: READMEMaven artefacts under au.com.dius.pact (for example au.com.dius.pact:consumer) source: README

1 Fetched from the GitHub or GitLab API on . Hover a value for its own date.

When each fits

Written from each project's documented scope, not from preference. Neither tool is ranked.

Pact JS

Fits projects that write consumer-driven contract tests for APIs in JavaScript; its README describes a consumer test that produces a contract shared with the provider. source: README

Pact-JVM

Fits projects that run on the JVM and use consumer-driven contracts; its README describes consumer tests that generate Pact files used to verify service providers. source: README

More on these tools

Sources

  1. GitHub REST API: repository, read
  2. GitHub REST API: repository, read
  3. GitHub REST API: contributors, read
  4. GitHub REST API: contributors, read
  5. GitHub REST API: latest release, read
  6. GitHub REST API: latest release, read
  7. GitHub REST API: commits, read
  8. GitHub REST API: commits, read
  9. README, read
  10. README, read
  11. Docs: Maven plugin, read

Documented facts collected 2026-09-22. See the methodology for how metrics and facts are gathered.