Connect RPC, Buf’s family of fully protocol-conformant and battle-tested alternatives to Google’s gRPC project, has joined the Cloud Native Computing Foundation. We joined the CNCF to demonstrate our deep commitment to sustainably and responsibly growing Connect as a well-governed and community-led open source project. Today, Connect integrates seamlessly with gRPC systems in production at companies of all sizes, such as CrowdStrike, PlanetScale, RedPanda, Chick-fil-A, Bluesky, and Dropbox.
Connect is a set of libraries designed to help you build browser and gRPC-compatible HTTP APIs. You only need to write a brief Protocol Buffer schema and implement your application server logic in your programming language of choice. Connect automatically generates code for marshaling, routing, compression, and content-type negotiation. Additionally, it will create an idiomatic, type-safe client in any supported programming language.
We’ve been listening to many of our customers express their frustration with the growing complexity and instability they’ve endured with Google’s gRPC projects. Organizations that depend heavily on gRPC haven’t felt they’ve had a voice in where the project is headed and often find themselves blindsided by breaking changes. Prominent gRPC users (like etcd) often cannot update for months. We felt compelled to provide an alternative offering the community deserves.
Read our announcement blog post for more background on why we built Connect.
Although Connect provides fully conformant gRPC protocol support using HTTP/2, it also exposes a simpler protocol that any HTTP/1.1, HTTP/2, or HTTP/3 clients can utilize. This means the Connect protocol and your application are supported everywhere the web is, including browsers, without additional overhead or intermediate latency-introducing proxy or transforms.
The Connect RPC project features a fully automated conformance suite that validates an implementation’s correctness against the Connect RPC and gRPC protocol specifications. We recently wrote an article that dives deep into how that suite works and provides a detailed overview of the conformance issues we’ve identified in Google gRPC and Connect RPC. Our tests identified at least 22 conformance issues across Google’s generally available/v1.0 gRPC implementations, and a handful of issues (mostly related to specification ambiguity) in Connect RPC we’ve already fixed.
We’re developing Connect RPC in the open with the community. Given its rapid uptick in popularity and production adoption, we want to guarantee that the open source community can build on a solid, well-trusted foundation committed to stability and open governance. The Connect project and all its associated repositories will adhere to an RFC-based evolution, voted on by its maintainers, who will have direct decision-making power over the project's direction.
You tell us! Several of Connect's most enthusiastic contributors are now maintainers, with voices (and votes!) equal to those of Buf-employed maintainers. We’re excited to collaborate with the community to develop broad support for Connect RPC. Several active polls and discussions are happening on GitHub, and we’re looking for serious maintainers who want to play an active role in developing new implementations. The community has expressed interest in seeing the development of Dart, Ruby, Java, and Rust, just to name a few.
The maintainers are very active in our community Slack. Everyone is welcome to join us and help shape the future of Connect!