- Home
- Contract Testing Tools
- Stubborn Contract
Stubborn Contract
What it is
Stubborn Contract is the open-source continuation of Spring Cloud Contract for consumer-driven testing of HTTP and message-based interactions. Its contract-testing core and Stubborn Broker OSS use the Apache 2.0 license and can be used, modified, and deployed without charge. Contracts can use YAML, Groovy, Java, or Kotlin formats, and existing Groovy DSL, YAML, and Java DSL contracts can remain during migration. Maven, Gradle, and the CLI publish contracts. The Broker verifies contracts across branches and services and provides a CI-oriented can-i-deploy check. Listed Broker capabilities include branch-aware governance, AI contract generation from captured HTTP traffic, and MCP integration for AI agents, with SDKs for Java, Kotlin, JavaScript, and TypeScript. Version 0.1.2 adds Spring-free messaging components for Kafka, RabbitMQ, and JMS and requires Java 17 or later. An OpenRewrite recipe automates mechanical migration steps. The Broker can run locally with Docker on port 8080. Community help is best effort through GitHub issues, while Enterprise Partnerships provide direct maintainer communication and organization-focused support.
For and against
For
- Apache 2.0 open-source core
- HTTP and messaging contract support
- Branch-aware Broker verification
- Maven, Gradle, and CLI publishing
- Self-hosted Docker deployment
Against
- Free support has no public SLA
- Java 17 or later is required
The verdict
Stubborn Contract offers a free, self-hostable path for contract verification across services and branches. Its migration tooling, messaging support, and Broker governance are useful for teams continuing from Spring Cloud Contract.
Who it suits
It suits development teams managing consumer and provider contracts across HTTP or messaging services. Organizations relying on the project in production can consider Enterprise Partnerships for migration planning or dedicated support.
Plans and prices
Open-source core
Contract-testing core and Stubborn Broker OSS · free to use, modify, and deploy under Apache 2.0
Read 5 Oct 2026 · stubborn.sh
Enterprise Partnership
Stubborn Pro capabilities · migration planning · architecture sessions · priority engineering
Read 5 Oct 2026 · stubborn.sh
On the record
- Broker features
- The Broker page lists branch-aware governance, AI contract generation from captured HTTP traffic, and AI-agent integration through MCP.stubborn.sh · read 5 Oct 2026
- Broker governance
- Stubborn Broker verifies contracts across branches and services and provides a CI-friendly can-i-deploy check.stubborn.sh · read 5 Oct 2026
- Build integrations
- Contracts can be published through Maven or Gradle plugins, or through the CLI.stubborn.sh · read 5 Oct 2026
- Community support
- Community support is best effort through GitHub issues, with no public SLA for free support.stubborn.sh · read 5 Oct 2026
- Enterprise support
- Enterprise Partnerships include direct maintainer communication and support for integrating the project into an organization’s CI/CD and deployment pipelines.stubborn.sh · read 5 Oct 2026
- HTTP and messaging
- The testing project supports contracts for both HTTP and message-based interactions.github.com · read 5 Oct 2026
- Languages
- The Broker page lists Java, Kotlin, JavaScript, and TypeScript SDK support.stubborn.sh · read 5 Oct 2026
- Messaging integrations
- Stubborn Contract 0.1.2 adds Spring-free messaging building blocks for Kafka, RabbitMQ, and JMS.stubborn.sh · read 5 Oct 2026
- Migration
- The migration guide says an OpenRewrite recipe automates mechanical migration steps from Spring Cloud Contract.stubborn.sh · read 5 Oct 2026
- Open-source license
- The contract-testing core and Stubborn Broker OSS are licensed under Apache 2.0 and are free to use, modify, and deploy.stubborn.sh · read 5 Oct 2026
- Purpose
- Stubborn Contract is the official continuation of Spring Cloud Contract, providing consumer-driven contract testing for HTTP and message-based interactions.github.com · read 5 Oct 2026
- Runtime requirement
- Stubborn Contract 0.1.2 runs on Java 17 or later and is listed as tested with Java 21 and 25 and Spring Boot 4.1.stubborn.sh · read 5 Oct 2026
- Self-hosting
- The Broker page provides a Docker command to run the server locally on port 8080.stubborn.sh · read 5 Oct 2026
- Supported formats
- Existing Groovy DSL, YAML, and Java DSL contracts continue to work during migration.stubborn.sh · read 5 Oct 2026
- Who it is for
- Enterprise Partnerships are offered to organizations that rely on Stubborn Contract in production and want migration planning, roadmap participation, or dedicated support.stubborn.sh · read 5 Oct 2026