# bufbuild/buf

The best way of working with Protocol Buffers.

Repository: https://github.com/bufbuild/buf
Canonical: https://ross.abutalabs.com/products/buf
Homepage: https://buf.build
Language: Go
License: Apache-2.0
License Family: permissive
Topics: protocol-buffers, protoc, grpc, protobuf, buf-cli, buf-schema-registry
Last push: 2026-08-26T18:46:50+00:00

## Health v2 (maintenance only)
Score: 97/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 93, longevity 100
- inputs: {"age_days": 2527, "days_push": 7, "days_rel": 47, "gap_med": 12.5, "n_releases_24m": 47}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 11389, forks 366 (observed 2026-08-28T04:10:46.907027+00:00)

## What it is
Buf is a modern CLI toolchain for Protocol Buffers that replaces protoc with a fast compiler plus linting, formatting, breaking-change detection, code generation, and dependency management. It also connects to the Buf Schema Registry for publishing, versioning, and governing Protobuf APIs.

## Use cases
- replace protoc with a modern protobuf compiler
- lint protobuf schema files
- detect breaking changes in proto APIs before merge
- generate code from protobuf definitions
- manage protobuf dependencies across repositories
- format .proto files
- call gRPC APIs from the command line
- publish and version protobuf schemas in a registry

## When to choose
- you work with Protobuf or gRPC and want to move beyond protoc shell scripts
- you need CI checks for API compatibility and style
- you want reproducible, declarative code generation via buf.gen.yaml
- you need a schema registry with generated SDKs and governance

## When to avoid
- your project does not use Protocol Buffers or gRPC
- you need a GUI-based API tool rather than a CLI
- you only need a one-off proto compile and already have protoc set up

## Facets
- artifact type: cli-tool
- maturity: active
- function: compiler, linter, formatter, build-tool, package-manager, cli, developer-tools, rpc, code-review, api-documentation
- domain: developer-tools, apis, backend, version-control
- platform: windows, cli, go
- tags: protobuf, grpc, protoc-replacement, schema-registry, code-generation, breaking-change-detection, api-linting, connectrpc, command-line, linux, macos, docker

## Member repositories
- bufbuild/buf (main) score 97

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:46.907027+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:15:38.153786+00:00, confidence not recorded.
  - readme: https://github.com/bufbuild/buf (fetched 2026-08-28T04:10:46.907027+00:00, sha 00c47685d9e2)
  - homepage: https://buf.build (fetched 2026-08-29T08:14:27.051247+00:00, sha b0ecad73c89c)
  - site_page: https://buf.build/docs (fetched 2026-08-29T08:14:27.056021+00:00, sha ae163d239694)
  - site_page: https://buf.build/pricing (fetched 2026-08-29T08:14:27.053834+00:00, sha 6065f9336a1e)
- Data as of 2026-08-30T08:39:29.467469+00:00.
