- Home
- gRPC Tools
- Granc
Granc
What it is
Granc is a lightweight Linux command-line tool written in Rust for making dynamic gRPC calls with JSON. It converts JSON to Protobuf and back at runtime, so service Protobuf files do not need to be compiled into the client. Using a descriptor, it detects unary, server-streaming, client-streaming, and bidirectional RPCs. Schemas can come from server reflection or a local binary FileDescriptorSet file. Commands list services and describe services, messages, and enums. Granc also generates static Markdown documentation with cross-links between services and types. Requests can carry custom headers, including authorization or tracing metadata, and JSON is validated before transmission. The core logic is available as a separate library crate for integration tests, proxies, or automation tools. It is free and open source under either Apache License 2.0 or MIT. The project moved to Codeberg, while its GitHub repository was archived on March 9, 2026. TLS support with configurable roots and client identity remains on the roadmap.
For and against
For
- Uses JSON without compiled Protobuf files
- Supports all major gRPC call modes
- Discovers schemas through reflection or descriptors
- Generates linked Markdown documentation
- Provides reusable library functionality
Against
- TLS support is only on the roadmap
- Linux is the listed platform
- Requires service reflection or a descriptor source
The verdict
Granc provides JSON-based gRPC exploration and calls in a free, open-source Linux tool. Its planned TLS support is an important consideration for secured deployments.
Who it suits
It suits Linux developers and operators who need a self-hosted gRPC client using JSON, service discovery, documentation generation, or reusable library logic.
Plans and prices
Free/open-source software
No paid plans or usage limits stated
Read 4 Oct 2026 · github.com
On the record
- Distribution
- The README gives `cargo install --locked granc` as the installation command.github.com · read 4 Oct 2026
- Documentation
- It generates static, cross-linked Markdown documentation for services and types.github.com · read 4 Oct 2026
- Encoding
- It transcodes JSON to Protobuf and back at runtime.github.com · read 4 Oct 2026
- Inspection
- Its commands list services and describe services, messages, and enums.github.com · read 4 Oct 2026
- JSON calls
- It sends gRPC calls using JSON payloads without compiling the service’s Protobuf files into the client.github.com · read 4 Oct 2026
- Library use
- The core logic is available as a separate library crate for building tools such as integration tests, proxies, or automation tools.github.com · read 4 Oct 2026
- License
- The project is offered under either the Apache License 2.0 or the MIT license, at the user’s option.github.com · read 4 Oct 2026
- Product
- Granc is a lightweight, dynamic gRPC command-line tool written in Rust.github.com · read 4 Oct 2026
- Project status
- The maker says the project moved to Codeberg; the GitHub repository was archived on March 9, 2026.github.com · read 4 Oct 2026
- Request metadata
- Requests can include custom headers such as authorization or tracing metadata.github.com · read 4 Oct 2026
- RPC modes
- It detects unary, server-streaming, client-streaming, and bidirectional calls from the descriptor.github.com · read 4 Oct 2026
- Schema discovery
- It can obtain schemas through server reflection or a local binary FileDescriptorSet file.github.com · read 4 Oct 2026
- Security limitation
- TLS support with configurable root certificates and client identity is listed on the roadmap.github.com · read 4 Oct 2026
- Validation
- Granc validates JSON before sending it over the network.github.com · read 4 Oct 2026