88

/ 100

GradeB

A top-tier open source project. Docs, tests, and CI are all in excellent shape.

Top 16% of 5,156 graded repos

Protocol Buffers - Google's data interchange format

Top fixes

Highest-impact changes first, ranked by point weight

12 to address
  1. 1
    Tests18pt

    Wire your tests to a documented command (e.g. a test script in your build config) so the suite is reproducible.

  2. 2
    CI/CD14pt

    Add `pull_request:` to the workflow `on:` triggers.

  3. 3
    CI/CD14pt

    Add a lint step to catch style issues automatically.

  4. 4
    CI/CD14pt

    Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.

Working through the fixes? Let every push regrade itself.

The free GitHub App rescans this repo on every push and posts the grade as a commit check, so the score climbs without coming back to rescan by hand.

Install the GitHub App

Scorecard

Every check, grouped by category and sorted worst-first

Documentation

90

Contributing guide5pt72

Contributing guide is detailed and thorough.

Install and run instructions9pt90

README documents how to install the project.

README12pt93

README is present.

License6pt100

Licensed under Other.

Engineering

83

CI/CD14pt68

CI is configured (.github/workflows/test_bazel.yml).

Tests18pt80

Test files detected (bazel/tests).

Reproducibility6pt92

Lockfile present (examples/go/go.sum). Installs are reproducible.

Linting and formatting5pt100

Linter or formatter configured (csharp/.editorconfig).

Issue and PR templates6pt100

Issue or PR templates present.

Project health

100

Dependency manifest6pt100

Dependency manifest found (csharp/compatibility_tests/v3.0.0/src/Google.Protobuf.Test/Google.Protobuf.Test.csproj).

Repository metadata5pt100

Repository has a description.

Activity5pt100

Actively maintained (pushed within the last month).

Housekeeping3pt100

.gitignore present.

Repository health signals

Activity, community, and responsiveness at scan time

Activity

  • 189 / 641
    Commits (30d / 90d)
  • 16,165
    Forks
  • 216
    Releaseslatest 10y ago

Community

  • 87% - Good
    Community health
  • 4 bus factor
    authors own >50% of commits
  • 71,396
    Watchers

Responsiveness

  • 9h
    Median issue response
  • 2d 4h
    Median PR merge time
  • 268
    Open issues
Repository files69 root entries
  • .bazelci
  • .bcr
  • .github
    Good: CI is configured (.github/workflows/test_bazel.yml).
    Good: Dependabot configured for github-actions.
    Good: Issue or PR templates present.
  • bazel
    Good: Test files detected (bazel/tests).
  • benchmarks
  • build_defs
  • ci
  • cmake
  • compatibility
  • conformance
  • csharp
    Good: Linter or formatter configured (csharp/.editorconfig).
    Good: Dependency manifest found (csharp/compatibility_tests/v3.0.0/src/Google.Protobuf.Test/Google.Protobuf.Test.csproj).
  • docs
  • editions
  • editors
  • examples
    Good: Lockfile present (examples/go/go.sum). Installs are reproducible.
  • go
  • google3
  • hpb
  • hpb_generator
  • java
  • lua
  • objectivec
  • patches
  • php
  • pkg
  • python
    Good: Environment pinned via python/docs/environment.yml.
  • ruby
  • rust
  • src
  • third_party
  • toolchain
  • upb
  • upb_generator
  • .bazelignore
  • .bazeliskrc
  • .bazelrc
  • .clang-format
  • .gitattributes
  • .gitignore
    Good: .gitignore present.
  • .gitmodules
  • .readthedocs.yml
  • appveyor.bat
  • appveyor.yml
  • BUILD.bazel
  • CMakeLists.txt
  • CODE_OF_CONDUCT.md
    Good: Code of conduct present.
  • CONTRIBUTING.md
    Good: Contributing guide is detailed and thorough.
    Issue: Contributing guide lacks a setup section (−12 pts).Fix: Show new contributors how to get a local dev environment running.
    Issue: Contributing guide lacks a code style section (−8 pts).Fix: Describe your linting/formatting rules and how to run them.
    Issue: Contributing guide lacks a testing section (−8 pts).Fix: Show contributors how to run the test suite (e.g. npm test, pytest, cargo test).
    Good: Contributing guide describes the PR/review workflow.
    Issue: Contributing guide has no code examples (−5 pts).Fix: Add code blocks showing example commands for setup, running tests, and submitting a PR.
  • CONTRIBUTORS.txt
  • Disable_bundle_install.patch
  • fix_permissions.sh
  • generate_descriptor_proto.sh
  • global.json
  • google3_export_generated_files.sh
  • LICENSE
    Good: Licensed under Other.
  • maven_dev_install.json
  • maven_install.json
  • MODULE.bazel
  • PrivacyInfo.xcprivacy
  • protobuf_deps.bzl
  • protobuf_release.bzl
  • protobuf_version.bzl
  • protobuf.bzl
  • Protobuf.podspec
  • README.md
    Good: README is present.
    Issue: README has some structure (−7 pts). 2-3 headings earns partial credit; 4+ earns the full +15 pts.Fix: Add more sections (Overview, Install, Usage, Contributing) using ## headings.
    Good: README includes screenshots or visuals. Great for first impressions.
    Good: README has code examples.
    Good: README links to a live demo or deployed app.
    Good: README includes status badges.
    Good: README documents how to install the project.
    Good: README documents how to run the project.
  • regenerate_stale_files.sh
  • SECURITY.md
    Good: Security policy present.
  • version.json
  • WORKSPACE
  • WORKSPACE.bzlmod
RepoGrade badge preview

Add this badge to your README

It updates automatically each time the repo is re-graded.

[![RepoGrade](https://www.repo-grade.com/api/badge/protocolbuffers/protobuf)](https://www.repo-grade.com/report/protocolbuffers/protobuf)

More graded C++ repos