Strengthening Crossplane's Community-Driven Ecosystem

The Crossplane community has always thrived on collaboration, innovation, and openness. Today, we're excited to announce key updates aimed at fostering the growth of community-contributed Crossplane extensions (providers and functions) while reinforcing our commitment to vendor neutrality—just like all CNCF projects.

We recognize the importance of ensuring that all community-driven contributions remain accessible, well-maintained, and free from vendor lock-in. These updates provide clear expectations and a neutral foundation to support the entire Crossplane ecosystem.

What’s Changing?

Clear Expectations for Community-Contributed Extensions

We are introducing operational guidelines for maintaining extensions contributed under the github.com/crossplane-contrib organization. These policies ensure that community extensions are properly maintained, fostering long-term sustainability and reliability.

A Vendor-Neutral, Community-Driven Home for Extensions

To enhance accessibility and neutrality, all community-contributed extensions will now be published, at a minimum, to ghcr.io/crossplane-contrib. Project documentation will reference this location, providing a consistent and independent source that the entire community can trust—regardless of vendor affiliations.

By reinforcing vendor neutrality, we align with the broader CNCF ecosystem’s principles, ensuring that Crossplane remains an open, community-first project. These changes support our shared goal of making Crossplane the best choice for building cloud-native control planes while improving transparency, accessibility, and long-term adoption.

Your contributions and feedback fuel Crossplane’s success. We appreciate your continued support and look forward to building a strong, open, and vendor-neutral ecosystem together!

The Crossplane Ecosystem

Crossplane has a large and thriving ecosystem of providers and functions—collectively referred to as extensions. These extensions can be public or private and maintained by individuals, end-user organizations, or vendors.

A subset of these extensions has been donated to the Crossplane project and resides in the crossplane-contrib GitHub organization. With today's governance updates, these projects will follow the same requirements as the Crossplane core project.

The Goals of crossplane-contrib

From its inception, crossplane-contrib was created to provide a collaborative home for community-driven Crossplane extensions. With today’s changes, we are introducing a clear health criteria for these projects, aligned with the CNCF’s standards. These criteria include:

  • Regular builds
  • A vendor-neutral home for released OCI images

However, it is not a requirement for all Crossplane extensions to reside in crossplane-contrib. To ensure the ecosystem thrives, there must be opportunities for differentiation through commercial offerings and services around these extensions.

Regular Builds for Community Extensions

A key governance update requires that all extensions donated to github.com/crossplane-contrib provide regular builds, ensuring the community has reliable access to up-to-date extensions. This change will help maintain a curated and well-maintained catalog of community extensions.

Introducing xpkg.crossplane.io

All Crossplane packages—including Crossplane itself and community-contributed extensions—will be hosted on GitHub Container Registry (GHCR) at ghcr.io/crossplane-contrib and proxied via xpkg.crossplane.io.

Previously, much of the community content was served from xpkg.upbound.io. To ensure vendor neutrality, Crossplane and community content will now be published to xpkg.crossplane.io. Additionally, content can be published to other registries such as Upbound and Docker Hub.

API Groups for Extensions

Crossplane providers define managed resources using Kubernetes API conventions. Moving forward:

  • All new extension projects in crossplane-contrib must use a crossplane.io API group.
  • Existing projects that are later donated to Crossplane will not be required to change their API group, as this would introduce breaking changes for existing compositions.

Updates to Crossplane Documentation and Website

To maintain vendor neutrality, the Crossplane documentation and website will only reference community extensions. Commercial offerings related to Crossplane will be listed separately on a dedicated Enterprise page.

Implementing the New Policies

Over the coming weeks, we will work with community maintainers to bring their Crossplane extensions into compliance with these new policies. Additionally, project documentation will be updated to refer to images from GHCR.

Looking Ahead

We’re excited about the future of Crossplane and the continued growth of community contributions. We look forward to discussing these updates and other new features at this year’s KubeCon in London—be sure to stop by our booth!

The Crossplane community is at the heart of this project’s success. Whether you're a developer, user, or just interested in what we're building, we’d love to hear from you! Connect with us through the following channels:

Let’s continue building a strong, open, and vendor-neutral ecosystem together!