Protocol Buffers logo

Protocol Buffers

Google's data interchange format, with the protoc compiler that turns .proto files into code.

Compare Protocol Buffers with another product

Alternatives

See all alternatives

About Protocol Buffers

Protocol Buffers is Google's language-neutral format for serializing structured data. Developers describe messages in .proto files, and the protoc compiler generates code for reading and writing them in languages including C++, Java, Python, Go, C#, Ruby, PHP, Objective-C and Rust.

The repository holds the compiler and the runtime libraries for each language. It is very widely used and actively developed. Most people install protoc as part of a build toolchain for services that exchange data, such as gRPC APIs.

Strengths

  • Generates code for many programming languages from one schema
  • Compact binary format with schema evolution
  • Very widely used and actively maintained

Limitations

  • Command-line compiler with no graphical interface
  • Binary messages are not human-readable without tooling

Details

Pricing
FreeFree and open source under the BSD 3-Clause licence.
License
BSD-3-Clause
Developer
Google
Platforms
Windows, Command line
How it runs
Downloadable app
Account
Not required
Works offline
Yes
Best suited for
Developers defining data formats or gRPC services shared across languages
Last verified
Added

Report a wrong fact or a dead link on this listing