protocolbuffers/protobufPublic

Protocol Buffers - Google's data interchange format

AI summary: A language-neutral, platform-neutral extensible mechanism for serializing structured data.

Stars
72.1K
+11 today
Forks
16.3K
Watchers
2K
Open issues
141
Open PRs
324
Contributors
~1.5K
Commits
24.1K
Branches
423

C++OtherCreated Aug 26, 2014Last push 1d agoLatest release v36.2+26 stars this week+148 this month

Quick answers

What is protobuf?
A language-neutral, platform-neutral extensible mechanism for serializing structured data.
What does protobuf do?
Protocol Buffers (protobuf) is Google's highly efficient binary data serialization format designed to be smaller, faster, and simpler than XML or JSON. Developers define data structures in a .proto file, and the protocol compiler generates native source code classes to easily read and write this structured data across various languages and platforms. It enables seamless remote procedure calls (RPC) and cross-service communication in distributed systems by ensuring strict backwards and forwards compatibility. The ecosystem includes the core compiler (`protoc`) and runtimes for major languages like C++, Java, and Python.
Who is protobuf for?
Backend engineers, distributed systems architects, and network developers needing a highly efficient and standardized way to serialize data for inter-service communication.
How do I get started with protobuf?
Download the latest release from the official repository and follow the language-specific runtime instructions.
How popular is protobuf on GitHub?
protocolbuffers/protobuf has 72,089 stars and 16,303 forks on GitHub, and gained 26 stars in the last 7 days.
What license does protobuf use?
protocolbuffers/protobuf is released under the Other license.

Star history

since Aug 19, 2018
020K40K60KAug 2018Apr 2021Dec 2023Oct 2026
72.1K stars as of Oct 3, 2026. Before Aug 22, 2026, reconstructed from public GitHub event archives (checked against the repository's real star total); since then measured daily.

Contribution activity

commits per day, last 52 weeks
SepOctNovDecJanFebMarAprMayJunJulAugSepMonWedFri2025-09-28: 2 commits2025-09-29: 5 commits2025-09-30: 7 commits2025-10-01: 6 commits2025-10-02: 11 commits2025-10-03: 11 commits2025-10-04: 2 commits2025-10-05: 1 commit2025-10-06: 23 commits2025-10-07: 18 commits2025-10-08: 6 commits2025-10-09: 9 commits2025-10-10: 11 commits2025-10-11: 1 commit2025-10-12: 1 commit2025-10-13: 12 commits2025-10-14: 14 commits2025-10-15: 7 commits2025-10-16: 10 commits2025-10-17: 13 commits2025-10-18: 11 commits2025-10-19: 0 commits2025-10-20: 7 commits2025-10-21: 6 commits2025-10-22: 6 commits2025-10-23: 8 commits2025-10-24: 15 commits2025-10-25: 2 commits2025-10-26: 2 commits2025-10-27: 3 commits2025-10-28: 4 commits2025-10-29: 12 commits2025-10-30: 11 commits2025-10-31: 5 commits2025-11-01: 1 commit2025-11-02: 0 commits2025-11-03: 6 commits2025-11-04: 7 commits2025-11-05: 11 commits2025-11-06: 17 commits2025-11-07: 9 commits2025-11-08: 4 commits2025-11-09: 0 commits2025-11-10: 14 commits2025-11-11: 1 commit2025-11-12: 12 commits2025-11-13: 5 commits2025-11-14: 4 commits2025-11-15: 2 commits2025-11-16: 0 commits2025-11-17: 11 commits2025-11-18: 6 commits2025-11-19: 9 commits2025-11-20: 8 commits2025-11-21: 7 commits2025-11-22: 0 commits2025-11-23: 0 commits2025-11-24: 17 commits2025-11-25: 10 commits2025-11-26: 9 commits2025-11-27: 3 commits2025-11-28: 0 commits2025-11-29: 0 commits2025-11-30: 0 commits2025-12-01: 7 commits2025-12-02: 11 commits2025-12-03: 7 commits2025-12-04: 5 commits2025-12-05: 7 commits2025-12-06: 0 commits2025-12-07: 1 commit2025-12-08: 5 commits2025-12-09: 3 commits2025-12-10: 10 commits2025-12-11: 14 commits2025-12-12: 10 commits2025-12-13: 0 commits2025-12-14: 1 commit2025-12-15: 13 commits2025-12-16: 13 commits2025-12-17: 6 commits2025-12-18: 6 commits2025-12-19: 5 commits2025-12-20: 2 commits2025-12-21: 0 commits2025-12-22: 5 commits2025-12-23: 6 commits2025-12-24: 1 commit2025-12-25: 1 commit2025-12-26: 1 commit2025-12-27: 3 commits2025-12-28: 0 commits2025-12-29: 4 commits2025-12-30: 13 commits2025-12-31: 0 commits2026-01-01: 0 commits2026-01-02: 3 commits2026-01-03: 0 commits2026-01-04: 0 commits2026-01-05: 11 commits2026-01-06: 8 commits2026-01-07: 12 commits2026-01-08: 5 commits2026-01-09: 11 commits2026-01-10: 0 commits2026-01-11: 1 commit2026-01-12: 6 commits2026-01-13: 7 commits2026-01-14: 4 commits2026-01-15: 6 commits2026-01-16: 5 commits2026-01-17: 1 commit2026-01-18: 1 commit2026-01-19: 3 commits2026-01-20: 13 commits2026-01-21: 12 commits2026-01-22: 5 commits2026-01-23: 6 commits2026-01-24: 0 commits2026-01-25: 1 commit2026-01-26: 11 commits2026-01-27: 14 commits2026-01-28: 14 commits2026-01-29: 9 commits2026-01-30: 9 commits2026-01-31: 0 commits2026-02-01: 3 commits2026-02-02: 4 commits2026-02-03: 8 commits2026-02-04: 8 commits2026-02-05: 9 commits2026-02-06: 9 commits2026-02-07: 2 commits2026-02-08: 1 commit2026-02-09: 8 commits2026-02-10: 7 commits2026-02-11: 8 commits2026-02-12: 5 commits2026-02-13: 2 commits2026-02-14: 2 commits2026-02-15: 0 commits2026-02-16: 1 commit2026-02-17: 3 commits2026-02-18: 13 commits2026-02-19: 6 commits2026-02-20: 4 commits2026-02-21: 2 commits2026-02-22: 2 commits2026-02-23: 8 commits2026-02-24: 7 commits2026-02-25: 11 commits2026-02-26: 4 commits2026-02-27: 7 commits2026-02-28: 1 commit2026-03-01: 15 commits2026-03-02: 5 commits2026-03-03: 4 commits2026-03-04: 8 commits2026-03-05: 10 commits2026-03-06: 6 commits2026-03-07: 1 commit2026-03-08: 0 commits2026-03-09: 7 commits2026-03-10: 3 commits2026-03-11: 7 commits2026-03-12: 14 commits2026-03-13: 10 commits2026-03-14: 2 commits2026-03-15: 4 commits2026-03-16: 14 commits2026-03-17: 7 commits2026-03-18: 10 commits2026-03-19: 1 commit2026-03-20: 12 commits2026-03-21: 0 commits2026-03-22: 1 commit2026-03-23: 8 commits2026-03-24: 12 commits2026-03-25: 4 commits2026-03-26: 9 commits2026-03-27: 2 commits2026-03-28: 3 commits2026-03-29: 1 commit2026-03-30: 14 commits2026-03-31: 13 commits2026-04-01: 16 commits2026-04-02: 15 commits2026-04-03: 11 commits2026-04-04: 0 commits2026-04-05: 0 commits2026-04-06: 8 commits2026-04-07: 7 commits2026-04-08: 16 commits2026-04-09: 10 commits2026-04-10: 10 commits2026-04-11: 1 commit2026-04-12: 0 commits2026-04-13: 9 commits2026-04-14: 5 commits2026-04-15: 7 commits2026-04-16: 11 commits2026-04-17: 4 commits2026-04-18: 3 commits2026-04-19: 1 commit2026-04-20: 11 commits2026-04-21: 11 commits2026-04-22: 12 commits2026-04-23: 18 commits2026-04-24: 2 commits2026-04-25: 0 commits2026-04-26: 1 commit2026-04-27: 7 commits2026-04-28: 4 commits2026-04-29: 7 commits2026-04-30: 13 commits2026-05-01: 10 commits2026-05-02: 1 commit2026-05-03: 0 commits2026-05-04: 8 commits2026-05-05: 14 commits2026-05-06: 13 commits2026-05-07: 20 commits2026-05-08: 6 commits2026-05-09: 0 commits2026-05-10: 0 commits2026-05-11: 4 commits2026-05-12: 14 commits2026-05-13: 10 commits2026-05-14: 15 commits2026-05-15: 3 commits2026-05-16: 1 commit2026-05-17: 0 commits2026-05-18: 11 commits2026-05-19: 9 commits2026-05-20: 5 commits2026-05-21: 12 commits2026-05-22: 10 commits2026-05-23: 4 commits2026-05-24: 1 commit2026-05-25: 0 commits2026-05-26: 10 commits2026-05-27: 6 commits2026-05-28: 11 commits2026-05-29: 6 commits2026-05-30: 0 commits2026-05-31: 0 commits2026-06-01: 14 commits2026-06-02: 12 commits2026-06-03: 12 commits2026-06-04: 6 commits2026-06-05: 13 commits2026-06-06: 1 commit2026-06-07: 2 commits2026-06-08: 20 commits2026-06-09: 5 commits2026-06-10: 11 commits2026-06-11: 5 commits2026-06-12: 4 commits2026-06-13: 0 commits2026-06-14: 10 commits2026-06-15: 15 commits2026-06-16: 6 commits2026-06-17: 9 commits2026-06-18: 13 commits2026-06-19: 5 commits2026-06-20: 0 commits2026-06-21: 1 commit2026-06-22: 10 commits2026-06-23: 8 commits2026-06-24: 12 commits2026-06-25: 14 commits2026-06-26: 7 commits2026-06-27: 0 commits2026-06-28: 2 commits2026-06-29: 6 commits2026-06-30: 10 commits2026-07-01: 10 commits2026-07-02: 4 commits2026-07-03: 1 commit2026-07-04: 0 commits2026-07-05: 2 commits2026-07-06: 5 commits2026-07-07: 12 commits2026-07-08: 10 commits2026-07-09: 7 commits2026-07-10: 12 commits2026-07-11: 2 commits2026-07-12: 2 commits2026-07-13: 27 commits2026-07-14: 14 commits2026-07-15: 13 commits2026-07-16: 9 commits2026-07-17: 11 commits2026-07-18: 2 commits2026-07-19: 2 commits2026-07-20: 11 commits2026-07-21: 10 commits2026-07-22: 12 commits2026-07-23: 8 commits2026-07-24: 14 commits2026-07-25: 3 commits2026-07-26: 0 commits2026-07-27: 18 commits2026-07-28: 16 commits2026-07-29: 15 commits2026-07-30: 9 commits2026-07-31: 12 commits2026-08-01: 2 commits2026-08-02: 1 commit2026-08-03: 7 commits2026-08-04: 7 commits2026-08-05: 9 commits2026-08-06: 7 commits2026-08-07: 10 commits2026-08-08: 1 commit2026-08-09: 1 commit2026-08-10: 11 commits2026-08-11: 7 commits2026-08-12: 24 commits2026-08-13: 18 commits2026-08-14: 9 commits2026-08-15: 1 commit2026-08-16: 4 commits2026-08-17: 16 commits2026-08-18: 18 commits2026-08-19: 15 commits2026-08-20: 7 commits2026-08-21: 6 commits2026-08-22: 0 commits2026-08-23: 2 commits2026-08-24: 9 commits2026-08-25: 15 commits2026-08-26: 5 commits2026-08-27: 10 commits2026-08-28: 3 commits2026-08-29: 0 commits2026-08-30: 3 commits2026-08-31: 7 commits2026-09-01: 6 commits2026-09-02: 8 commits2026-09-03: 5 commits2026-09-04: 2 commits2026-09-05: 1 commit2026-09-06: 1 commit2026-09-07: 0 commits2026-09-08: 1 commit2026-09-09: 9 commits2026-09-10: 14 commits2026-09-11: 4 commits2026-09-12: 0 commits2026-09-13: 0 commits2026-09-14: 10 commits2026-09-15: 8 commits2026-09-16: 7 commits2026-09-17: 10 commits2026-09-18: 14 commits2026-09-19: 1 commit2026-09-20: 2 commits2026-09-21: 15 commits2026-09-22: 12 commits2026-09-23: 17 commits2026-09-24: 2 commits2026-09-25: 0 commits2026-09-26: 0 commits
2,439 commits in the last yearLessMore

Signals and awards

derived from tracked data
  • Landmark project

    72,089 stars

  • Battle-tested

    12 years of history

  • Very active

    2,439 commits in 52 weeks

  • Community-driven

    ~1,483 contributors

  • Well documented

    High community health score

  • Continuous integration

    Automated checks passing

What protobuf does

Protocol Buffers (protobuf) is Google's highly efficient binary data serialization format designed to be smaller, faster, and simpler than XML or JSON. Developers define data structures in a .proto file, and the protocol compiler generates native source code classes to easily read and write this structured data across various languages and platforms. It enables seamless remote procedure calls (RPC) and cross-service communication in distributed systems by ensuring strict backwards and forwards compatibility. The ecosystem includes the core compiler (`protoc`) and runtimes for major languages like C++, Java, and Python.

Backend engineers, distributed systems architects, and network developers needing a highly efficient and standardized way to serialize data for inter-service communication.

  • Efficient Binary Serialization: Encode structured data into a compact binary format that significantly reduces network payload size and parsing time.
  • Language-Neutral Code Generation: Use the `protoc` compiler to automatically generate data access classes for C++, Java, Python, and other languages.
  • Schema Evolution: Add or remove fields from data structures without breaking backwards or forwards compatibility with existing deployments.
  • Cross-Platform Compatibility: Seamlessly exchange serialized data between different operating systems and hardware architectures.
  • RPC Integration: Act as the foundational serialization layer for remote procedure call systems like gRPC.

Where teams use it

Microservices Communication

Passing structured messages between disparate backend microservices efficiently using a standardized binary format.

Data Storage Serialization

Serializing application state or telemetry data to disk in a compact, highly performant manner compared to JSON.

gRPC API Definition

Defining strict API contracts and payload structures for high-performance gRPC services across multiple language boundaries.

Bandwidth-Constrained Networks

Transmitting complex data structures over mobile or IoT networks where payload size and processing overhead must be minimized.

Getting started: Download the latest release from the official repository and follow the language-specific runtime instructions.

README

main branch

Protocol Buffers - Google's data interchange format

OpenSSF Scorecard

Copyright 2008 Google LLC

Overview

Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. You can learn more about it in protobuf's documentation.

This README file contains protobuf installation instructions. To install protobuf, you need to install the protocol compiler (used to compile .proto files) and the protobuf runtime for your chosen programming language.

Working With Protobuf Source Code

Most users will find working from supported releases to be the easiest path.

If you choose to work from the head revision of the main branch your build will occasionally be broken by source-incompatible changes and insufficiently-tested (and therefore broken) behavior.

If you are using C++ or otherwise need to build protobuf from source as a part of your project, you should pin to a release commit on a release branch.

This is because even release branches can experience some instability in between release commits.

Bazel with Bzlmod

Protobuf supports Bzlmod with Bazel 8 +. Users should specify a dependency on protobuf in their MODULE.bazel file as follows.

bazel_dep(name = "protobuf", version = <VERSION>)

Users can optionally override the repo name, such as for compatibility with WORKSPACE.

bazel_dep(name = "protobuf", version = <VERSION>, repo_name = "com_google_protobuf")

Bazel with WORKSPACE

Users can also add the following to their legacy WORKSPACE file.

Note that with the release of 30.x there are a few more load statements to properly set up rules_java and rules_python.

http_archive(
    name = "com_google_protobuf",
    strip_prefix = "protobuf-VERSION",
    sha256 = ...,
    url = ...,
)

load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")

protobuf_deps()

load("@rules_java//java:rules_java_deps.bzl", "rules_java_dependencies")

rules_java_dependencies()

load("@rules_java//java:repositories.bzl", "rules_java_toolchains")

rules_java_toolchains()

load("@rules_python//python:repositories.bzl", "py_repositories")

py_repositories()

Protobuf Compiler Installation

The protobuf compiler is written in C++. If you are using C++, please follow the C++ Installation Instructions to install protoc along with the C++ runtime.

For non-C++ users, the simplest way to install the protocol compiler is to download a pre-built binary from our GitHub release page.

In the downloads section of each release, you can find pre-built binaries in zip packages: protoc-$VERSION-$PLATFORM.zip. It contains the protoc binary as well as a set of standard .proto files distributed along with protobuf.

If you are looking for an old version that is not available in the release page, check out the Maven repository.

These pre-built binaries are only provided for released versions. If you want to use the github main version at HEAD, or you need to modify protobuf code, or you are using C++, it's recommended to build your own protoc binary from source.

If you would like to build protoc binary from source, see the C++ Installation Instructions.

Protobuf Runtime Installation

Protobuf supports several different programming languages. For each programming language, you can find instructions in the corresponding source directory about how to install protobuf runtime for that specific language:

Language Source
C++ (include C++ runtime and protoc) src
Java java
Python python
Objective-C objectivec
C# csharp
Ruby ruby
Go protocolbuffers/protobuf-go
PHP php
Dart dart-lang/protobuf
JavaScript protocolbuffers/protobuf-javascript

Quick Start

The best way to learn how to use protobuf is to follow the tutorials in our developer guide.

If you want to learn from code examples, take a look at the examples in the examples directory.

Documentation

The complete documentation is available at the Protocol Buffers doc site.

Support Policy

Read about our version support policy to stay current on support timeframes for the language libraries.

Developer Community

To be alerted to upcoming changes in Protocol Buffers and connect with protobuf developers and users, join the Google Group.

View on GitHub

Recent activity

commits and pull requests

Recent open issues

view all

Releases and announcements

221 total
  1. Protocol Buffers v36.2v36.2Sep 17, 202694.9K downloads

    # Announcements * [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. # Compiler * Detects single-crate cross-file symbol collisions and conditionally emits crate-root re-exports. (https://github.com/protocolbuffers/protobuf/commit/30780158a07394a22eba3d57527ef32cac795e76) * Prepend the file module name to Rust type paths to use canonical paths. (https://github.com/protocolbuffers/protobuf/commit/7390c85c5ce3707ab236aeb511eeeaba49c2f4fa) * Expose generated per-file Rust proto modules as public. (https://github.com/protocolbuffers/protobuf/commit/7ed8a4bd72ba92b741fae08d6f05cbf987b7bcf1) # Csharp * Regenerate stale files. (https://github.com/protocolbuffers/protobuf/commit/57ef94fbb3e947c242a0a0a4831960f04b8bbf38) # Rust * Update README to note that the protobuf crate is superseded by google-protobuf. (https://github.com/protocolbuffers/protobuf/commit/8b6311f91c2fe6fb0ae4c661bdbef6e5b670c403) * Add README.md to google-protobuf-codegen release crate (https://github.com/protocolbuffers/protobuf/commit/10b8b5e3222ffc8868c3338485dd1dfb007dab85) * Detects single-crate cross-file symbol collisions an

  2. Protocol Buffers v36.1v36.1Aug 31, 2026342.3K downloads

    # Announcements * [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. # Csharp * Allow later enum aliases to overwrite in C# custom JSON enum mapping. (https://github.com/protocolbuffers/protobuf/commit/cc7e6bd557dc9a9d4b984314d6456f2a3ad78570) # Rust * Update README files for each crate. (https://github.com/protocolbuffers/protobuf/commit/e64a176925c0b1978bd6d14853605df384d60493) * Include runtime version details in assertion error messages. (https://github.com/protocolbuffers/protobuf/commit/fecb404dc83e3f6fd0760fd1eb18332bddd701e9) * Drop special treatment of rust versions below 4.33. (https://github.com/protocolbuffers/protobuf/commit/1312f3bb3d9f515b19e16f273f70d518b7cbba81) * Invert the relationship between rust crates (https://github.com/protocolbuffers/protobuf/commit/fbf3069a7a29be3ecda2cea3455ec26895d3f81f) # Python * Optimize pure Python parse path for custom JSON enum names. (https://github.com/protocolbuffers/protobuf/commit/333846acf4aec1392fdc15be64d12d6da3a220fd) * Additional unit tests for Python handling of custom JSON enum names. (https://github.com/protocolbuffers/protobuf/c

  3. Protocol Buffers v36.0v36.0Aug 20, 2026451.1K downloads

    # Announcements * [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. * [Migration Guide](https://protobuf.dev/support/migration/) may include additional guidance for breaking changes. # Bazel * Add Bazel9 test (https://github.com/protocolbuffers/protobuf/commit/90ad7e978849e11406eeb47baf228b099c5da9d0) * Bazel 9 tests for csharp, hpb, objc, php, python, rust and upb (https://github.com/protocolbuffers/protobuf/commit/f9e028f29fa83d0fcfb01c19ce0a4635e9beff5c) # Compiler * Make default_symbol_visibility STRICT in edition 2026 (https://github.com/protocolbuffers/protobuf/commit/fcd68c563cf2be486622a118caaf8c5f3858f744) * Add deprecation warnings for (py|cc|java)_generic_service. (https://github.com/protocolbuffers/protobuf/commit/517be42cfe43c9e2c69f5ee40e437a9d8cbd3f99) * Disallow reserving field number INT_MAX. (https://github.com/protocolbuffers/protobuf/commit/933c522f9e9a09d30f370dc885640af248e52469) * Add bazel targets for standalone plugin binaries (#23919) (https://github.com/protocolbuffers/protobuf/commit/81880fad1673797b6326a91582b2bf77069d505d) * Feat: `--<lang>_prefix` cli option (#248

  4. Protocol Buffers v36.0-rc2v36.0-rc2Aug 3, 2026pre-release9.1K downloads

    # Announcements * [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. # C++ * Disable option sub-location mapping in open-source builds. (https://github.com/protocolbuffers/protobuf/commit/1d8a656f5273a3b41afa609cf0f08b65491dbd48) * Add `json_options.proto` and `json_enumvalue_options.proto` and/or gencode derived from them to release artifacts (https://github.com/protocolbuffers/protobuf/commit/15e93345f8b821ad74334fd503318f8860b774bb) * Json/upb: Implement json EnumValueName for upb (https://github.com/protocolbuffers/protobuf/commit/0e8519e927101be180f12bc6f064dbf525c5d517) * Add deprecation warning for `Reflection::GetEnum()` and `Reflection::GetRepeatedEnum()`. (https://github.com/protocolbuffers/protobuf/commit/0bca2886d724d6782186ae970a0214b6fcc3e4e0) # Java * Add `json_options.proto` and `json_enumvalue_options.proto` and/or gencode derived from them to release artifacts (https://github.com/protocolbuffers/protobuf/commit/15e93345f8b821ad74334fd503318f8860b774bb) * Json/java: add json_name enumval support (https://github.com/protocolbuffers/protobuf/commit/bff6ed13255054eb8425f75f3b3f00af

  5. Protocol Buffers v36.0-rc1v36.0-rc1Jul 9, 2026pre-release17.2K downloads

    # Announcements * [Protobuf News](https://protobuf.dev/news/) may include additional announcements or pre-announcements for upcoming changes. # Bazel * Chore: add a unit test for .github/release_prep.sh (#26247) (https://github.com/protocolbuffers/protobuf/commit/8ccb4faa9bb9a53eca7b46f2775b291a1e288b92) * Add Bazel9 test (https://github.com/protocolbuffers/protobuf/commit/90ad7e978849e11406eeb47baf228b099c5da9d0) * Bazel 9 tests for csharp, hpb, objc, php, python, rust and upb (https://github.com/protocolbuffers/protobuf/commit/f9e028f29fa83d0fcfb01c19ce0a4635e9beff5c) # Compiler * Make default_symbol_visibility STRICT in edition 2026 (https://github.com/protocolbuffers/protobuf/commit/fcd68c563cf2be486622a118caaf8c5f3858f744) * Add deprecation warnings for (py|cc|java)_generic_service. (https://github.com/protocolbuffers/protobuf/commit/517be42cfe43c9e2c69f5ee40e437a9d8cbd3f99) * Disallow reserving field number INT_MAX. (https://github.com/protocolbuffers/protobuf/commit/933c522f9e9a09d30f370dc885640af248e52469) * Add bazel targets for standalone plugin binaries (#23919) (https://github.com/protocolbuffers/protobuf/commit/81880fad1673797b6326a91582b2bf77069d505d) *

Commits per week

last 52 weeks
780Week of 2025-09-28: 44 commitsWeek of 2025-10-05: 69 commitsWeek of 2025-10-12: 68 commitsWeek of 2025-10-19: 44 commitsWeek of 2025-10-26: 38 commitsWeek of 2025-11-02: 54 commitsWeek of 2025-11-09: 38 commitsWeek of 2025-11-16: 41 commitsWeek of 2025-11-23: 39 commitsWeek of 2025-11-30: 37 commitsWeek of 2025-12-07: 43 commitsWeek of 2025-12-14: 46 commitsWeek of 2025-12-21: 17 commitsWeek of 2025-12-28: 20 commitsWeek of 2026-01-04: 47 commitsWeek of 2026-01-11: 30 commitsWeek of 2026-01-18: 40 commitsWeek of 2026-01-25: 58 commitsWeek of 2026-02-01: 43 commitsWeek of 2026-02-08: 33 commitsWeek of 2026-02-15: 29 commitsWeek of 2026-02-22: 40 commitsWeek of 2026-03-01: 49 commitsWeek of 2026-03-08: 43 commitsWeek of 2026-03-15: 48 commitsWeek of 2026-03-22: 39 commitsWeek of 2026-03-29: 70 commitsWeek of 2026-04-05: 52 commitsWeek of 2026-04-12: 39 commitsWeek of 2026-04-19: 55 commitsWeek of 2026-04-26: 43 commitsWeek of 2026-05-03: 61 commitsWeek of 2026-05-10: 47 commitsWeek of 2026-05-17: 51 commitsWeek of 2026-05-24: 34 commitsWeek of 2026-05-31: 58 commitsWeek of 2026-06-07: 47 commitsWeek of 2026-06-14: 58 commitsWeek of 2026-06-21: 52 commitsWeek of 2026-06-28: 33 commitsWeek of 2026-07-05: 50 commitsWeek of 2026-07-12: 78 commitsWeek of 2026-07-19: 60 commitsWeek of 2026-07-26: 72 commitsWeek of 2026-08-02: 42 commitsWeek of 2026-08-09: 71 commitsWeek of 2026-08-16: 66 commitsWeek of 2026-08-23: 44 commitsWeek of 2026-08-30: 32 commitsWeek of 2026-09-06: 29 commitsWeek of 2026-09-13: 50 commitsWeek of 2026-09-20: 48 commitsSep 28, 2025Sep 20, 2026
2.4K commits in the last 52 weeks.

When work happens

weekday and hour
SunMonTueWedThuFriSat036912151821Sun 0:00 — 16 commitsSun 1:00 — 6 commitsSun 2:00 — 5 commitsSun 3:00 — 1 commitsSun 4:00 — 2 commitsSun 5:00 — 3 commitsSun 6:00 — 3 commitsSun 7:00 — 5 commitsSun 8:00 — 9 commitsSun 9:00 — 16 commitsSun 10:00 — 21 commitsSun 11:00 — 27 commitsSun 12:00 — 30 commitsSun 13:00 — 53 commitsSun 14:00 — 39 commitsSun 15:00 — 43 commitsSun 16:00 — 29 commitsSun 17:00 — 62 commitsSun 18:00 — 34 commitsSun 19:00 — 47 commitsSun 20:00 — 66 commitsSun 21:00 — 39 commitsSun 22:00 — 26 commitsSun 23:00 — 37 commitsMon 0:00 — 33 commitsMon 1:00 — 23 commitsMon 2:00 — 26 commitsMon 3:00 — 17 commitsMon 4:00 — 9 commitsMon 5:00 — 25 commitsMon 6:00 — 55 commitsMon 7:00 — 103 commitsMon 8:00 — 152 commitsMon 9:00 — 209 commitsMon 10:00 — 265 commitsMon 11:00 — 257 commitsMon 12:00 — 249 commitsMon 13:00 — 271 commitsMon 14:00 — 232 commitsMon 15:00 — 284 commitsMon 16:00 — 263 commitsMon 17:00 — 221 commitsMon 18:00 — 143 commitsMon 19:00 — 133 commitsMon 20:00 — 131 commitsMon 21:00 — 115 commitsMon 22:00 — 116 commitsMon 23:00 — 77 commitsTue 0:00 — 79 commitsTue 1:00 — 44 commitsTue 2:00 — 30 commitsTue 3:00 — 39 commitsTue 4:00 — 36 commitsTue 5:00 — 41 commitsTue 6:00 — 83 commitsTue 7:00 — 116 commitsTue 8:00 — 170 commitsTue 9:00 — 272 commitsTue 10:00 — 294 commitsTue 11:00 — 306 commitsTue 12:00 — 243 commitsTue 13:00 — 292 commitsTue 14:00 — 337 commitsTue 15:00 — 324 commitsTue 16:00 — 296 commitsTue 17:00 — 237 commitsTue 18:00 — 161 commitsTue 19:00 — 145 commitsTue 20:00 — 146 commitsTue 21:00 — 142 commitsTue 22:00 — 115 commitsTue 23:00 — 89 commitsWed 0:00 — 77 commitsWed 1:00 — 47 commitsWed 2:00 — 37 commitsWed 3:00 — 27 commitsWed 4:00 — 21 commitsWed 5:00 — 53 commitsWed 6:00 — 69 commitsWed 7:00 — 109 commitsWed 8:00 — 197 commitsWed 9:00 — 216 commitsWed 10:00 — 315 commitsWed 11:00 — 299 commitsWed 12:00 — 281 commitsWed 13:00 — 322 commitsWed 14:00 — 314 commitsWed 15:00 — 310 commitsWed 16:00 — 284 commitsWed 17:00 — 244 commitsWed 18:00 — 169 commitsWed 19:00 — 117 commitsWed 20:00 — 144 commitsWed 21:00 — 127 commitsWed 22:00 — 111 commitsWed 23:00 — 93 commitsThu 0:00 — 70 commitsThu 1:00 — 62 commitsThu 2:00 — 41 commitsThu 3:00 — 30 commitsThu 4:00 — 34 commitsThu 5:00 — 32 commitsThu 6:00 — 79 commitsThu 7:00 — 106 commitsThu 8:00 — 159 commitsThu 9:00 — 239 commitsThu 10:00 — 304 commitsThu 11:00 — 320 commitsThu 12:00 — 274 commitsThu 13:00 — 305 commitsThu 14:00 — 336 commitsThu 15:00 — 279 commitsThu 16:00 — 272 commitsThu 17:00 — 231 commitsThu 18:00 — 138 commitsThu 19:00 — 116 commitsThu 20:00 — 134 commitsThu 21:00 — 101 commitsThu 22:00 — 103 commitsThu 23:00 — 69 commitsFri 0:00 — 64 commitsFri 1:00 — 49 commitsFri 2:00 — 38 commitsFri 3:00 — 20 commitsFri 4:00 — 26 commitsFri 5:00 — 41 commitsFri 6:00 — 49 commitsFri 7:00 — 79 commitsFri 8:00 — 143 commitsFri 9:00 — 218 commitsFri 10:00 — 286 commitsFri 11:00 — 284 commitsFri 12:00 — 244 commitsFri 13:00 — 258 commitsFri 14:00 — 247 commitsFri 15:00 — 247 commitsFri 16:00 — 258 commitsFri 17:00 — 234 commitsFri 18:00 — 129 commitsFri 19:00 — 103 commitsFri 20:00 — 102 commitsFri 21:00 — 99 commitsFri 22:00 — 91 commitsFri 23:00 — 79 commitsSat 0:00 — 63 commitsSat 1:00 — 35 commitsSat 2:00 — 30 commitsSat 3:00 — 15 commitsSat 4:00 — 12 commitsSat 5:00 — 8 commitsSat 6:00 — 12 commitsSat 7:00 — 11 commitsSat 8:00 — 25 commitsSat 9:00 — 29 commitsSat 10:00 — 39 commitsSat 11:00 — 36 commitsSat 12:00 — 56 commitsSat 13:00 — 39 commitsSat 14:00 — 26 commitsSat 15:00 — 53 commitsSat 16:00 — 36 commitsSat 17:00 — 21 commitsSat 18:00 — 39 commitsSat 19:00 — 44 commitsSat 20:00 — 28 commitsSat 21:00 — 25 commitsSat 22:00 — 28 commitsSat 23:00 — 20 commits
Commit volume by weekday and hour (UTC). Larger dots mean more commits.
DateListRankStars gained
Aug 23, 2026daily#9+4
Aug 22, 2026daily#9+4