Skip to content

Protocol Buffers has evolved over two decades, transitioning from a performance-critical internal tool at Google to the default wire format for distributed systems.

While the core philosophy has remained constant, the language has evolved to support more platforms and complex engineering needs.

INTERNAL2001

Google Internal Launch

Protobuf was born inside Google to solve the overhead of XML. It became widely used for internal communication.

View Details
PROTO22008

Public Open Source

First public release, bringing the internal language's "required" fields and extension mechanism into the open.

View Details
PROTO32016

Proto3 Simplification

Simplified the language. Removed "required" fields, standardized JSON mapping, and enabled better cross-platform support.

View Details
EDITIONS2023

Editions Replace Versions

Replaces syntax "versions" with individually settable "features", so the language can add behavior without waiting on a new syntax release.

View Details

These open-source projects publish their Protobuf definitions in the open, but they are a small sample. Protobuf underpins internal APIs at companies of every size, and most of those schemas never leave private repositories.

Google

Google's API design guidance is built around resource-oriented APIs with Protobuf service definitions and HTTP/JSON transcoding.

View Project

Kubernetes

Kubernetes documents Protobuf as an alternate API encoding for built-in resources, alongside JSON.

View Project

Envoy Proxy

Envoy's xDS APIs and configuration resources are published as versioned Protobuf API references.

View Project

Docker / Swarm

SwarmKit keeps its control-plane API definitions in Protobuf schemas in the project source.

View Project

Vitess

Vitess publishes Protobuf definitions for its query, tablet, topology, and automation APIs.

View Project

Etcd

Etcd exposes a gRPC API with a gRPC-gateway that maps HTTP/JSON onto the same API surface.

View Project

TiDB

The TiDB/TiKV ecosystem maintains shared Protobuf definitions for distributed storage APIs in kvproto.

View Project

OpenTelemetry

OpenTelemetry defines its cross-language telemetry data protocol in shared Protobuf schemas.

View Project

Temporal

Temporal publishes the API definitions for its workflow platform as Protobuf schemas.

View Project

Looking for tools, plugins, or libraries?

Browse the ecosystem directory of 100+ tools, plugins, and serialization libraries with GitHub star counts, categories, sorting, and search filtering.

Explore Ecosystem Directory

Protobuf schemas can define services as well as messages, and an RPC framework turns those definitions into working clients and servers. There are only two you need to know: gRPC and ConnectRPC.

gRPC

The most widely deployed Protobuf RPC framework. Originally developed by Google, it uses HTTP/2 and supports bidirectional streaming and server reflection.

Visit Site
ConnectRPC

A Protobuf RPC framework that speaks three protocols from one implementation: its own HTTP-based protocol, gRPC, and gRPC-Web. Its requests are plain HTTP, so they work natively in browsers and can be debugged with curl.

Visit Site