# jhump/protoreflect

Reflection (Rich Descriptors) for Go Protocol Buffers

Repository: https://github.com/jhump/protoreflect
Canonical: https://ross.abutalabs.com/products/protoreflect
Language: Go
License: Apache-2.0
License Family: permissive
Topics: golang, protocol-buffers, protobuf, grpc, reflection, go
Last push: 2026-07-29T15:52:52+00:00

## Health v2 (maintenance only)
Score: 75/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 95, release rhythm 34, longevity 100
- inputs: {"age_days": 3488, "days_push": 35, "days_rel": 225, "gap_med": 502, "n_releases_24m": 2}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1487, forks 185 (observed 2026-08-28T04:04:51.984831+00:00)

## What it is
A Go library providing rich reflection utilities for Protocol Buffers descriptors and gRPC, building on the standard protobuf Go runtime reflection APIs. It includes packages for printing descriptors back to .proto source, programmatically building descriptors, and gRPC reflection support.

## Use cases
- inspect protobuf message descriptors at runtime in Go
- generate .proto source files from descriptors programmatically
- build valid protobuf descriptor trees without hand-crafting protos
- implement gRPC server reflection or query it from clients
- dynamically work with protobuf messages without generated code

## When to choose
- you need richer descriptor manipulation than the standard protobuf Go runtime offers
- you want to print or generate .proto files programmatically
- you're building gRPC tooling that relies on reflection

## When to avoid
- you only need basic protobuf serialization with generated code
- you're not working in Go
- you need a stable v2 API before its final release

## Facets
- artifact type: library
- maturity: active
- function: serialization, developer-tools, parser
- domain: developer-tools, apis, backend
- platform: go, cross-platform
- tags: protobuf, grpc, reflection, descriptors, proto-source-printing

## Member repositories
- jhump/protoreflect (main) score 75

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:51.984831+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-30T04:33:48.082419+00:00, confidence not recorded.
  - readme: https://github.com/jhump/protoreflect (fetched 2026-08-28T04:04:51.984831+00:00, sha 974f9c3e9fe2)
- Data as of 2026-08-30T08:39:29.467469+00:00.
