Open, source-backed software compatibility metadata.
compatibility.fyi helps answer whether software versions are known to work together. It collects compatibility evidence from official documentation, support matrices, release notes, and upstream sources into a small YAML-backed catalog with a searchable website and JSON API.
The goal is to become for compatibility data what endoflife.date is for lifecycle data: open, structured, community-maintained, easy to browse, and useful for automation.
Compatibility information is usually scattered across release notes, Helm charts, support matrices, CI jobs, source trees, and vendor docs. That makes practical questions hard to answer:
- Is Keycloak 26 compatible with PostgreSQL 17?
- Which Gateway API version is supported by Envoy Gateway 1.8?
- Which OpenShift hosted cluster versions work with a given Red Hat ACM release?
- Is this Renovate, Dependabot, Helm, or GitOps update actually compatible?
compatibility.fyi turns those claims into versioned metadata that people can inspect and tools can query.
- Compatibility data is stored as YAML files in
data/. - Each project should usually have one YAML file.
- Data is validated in CI before it can be merged.
- The website and API are deployed with Cloudflare Workers and Static Assets.
- There is no database and no traditional backend server.
The API is documented at compatibility.fyi/docs/api.
Start there for endpoint details, request examples, response semantics, confidence levels, and source evidence fields.
npm install
npm run devUseful commands:
npm run typecheck
npm run lint
npm run test
npm run buildCompatibility entries are source-backed ranges for a project version and dependency.
projects:
keycloak:
name: Keycloak
categories:
- Authentication
website: https://www.keycloak.org/
versions:
'26':
dependencies:
postgresql:
ranges:
- '>=14.0.0 <19.0.0'
relationship: database
confidence: high
notes:
- Keycloak current 26.x supported configurations list PostgreSQL 18.x, 17.x, 16.x, 15.x, and 14.x.
sources:
- title: Keycloak Supported Configurations - Supported Databases
url: https://www.keycloak.org/server/supported-configurations
accessedAt: '2026-07-08'
lastVerified: '2026-07-08'Compatibility is implicit when an entry has supported ranges. Use status: incompatible or
status: unknown only when a source explicitly documents that state.
Confidence levels:
low: incomplete, inferred, or not fully verifiedmedium: supported by credible evidencehigh: backed by primary sources and a verification date
Validate data with:
npm run validate:data -- data/*.yamlSee CONTRIBUTING.md for the contribution workflow.
Project maintainers can also use AGENTS.md as a copy-paste prompt for coding agents that draft new YAML compatibility files.
MIT