ghz vs grpcui
ghz
ghz.shgrpcui
github.comSide by side
| Figure | ghz | grpcui |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | — | Yes |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · gRPC Tools | 8.7 (#2) | 8.0 (#9) |
| Installation | The maker documents downloadable operating-system binaries, Homebrew, source builds, and Docker installation. | Installation is documented through Homebrew on macOS or Linux and through the Go install command. |
| License | The GitHub repository identifies the project license as Apache-2.0. | grpcui is released under the MIT license. |
| Purpose | ghz is a command line utility and Go package for load testing and benchmarking gRPC services, including local debugging and performance regression testing in automated CI environments. | grpcui is a command-line tool for interacting with gRPC servers through a browser-based web UI. |
Plans
In their own words
ghz
ghz is a command-line utility and Go package for load testing and benchmarking gRPC services, including local debugging and performance regression checks in CI. Tests can define a service with a.proto file, a compiled protoset bundle, or server reflection, and exercise unary, streaming, or duplex calls using JSON or binary data. Load schedules include constant, step, and linear request rates. Go templates can generate request data and metadata for each call using values such as worker ID, request number, method name, and timestamps. The CLI can emit summary, CSV, JSON, pretty JSON, HTML, Prometheus text exposition, and InfluxDB line protocol results. Documentation also covers InfluxDB output, Prototool, and prebuilt Grafana dashboards. The complementary ghz-web application is labeled beta; it stores reports in projects for viewing and comparison over time, and supports SQLite, MySQL, or PostgreSQL storage. It accepts reports through ingest endpoints. The project is identified as Apache-2.0 licensed. Installation options include prebuilt executables, Homebrew, and building from source. The CLI is listed at free; the web companion is beta.
grpcui
grpcui is a free, open-source command-line tool for interacting with gRPC servers through a browser-based interface. It is aimed at gRPC APIs rather than REST APIs and can discover service schemas through server reflection, .proto source files, or compiled protoset files. Its interface builds dynamic forms for protobuf messages, including well-known types, oneofs, and maps, and also accepts a complete JSON request body. grpcui supports RPC methods including streaming, then displays response headers, messages or errors, trailers, and readable HTML tables. It connects to plaintext and TLS servers, including mutual TLS with client certificates. Streaming requests have a constraint: they must be constructed all at once, so bidirectional streams cannot be handled interactively like they can with grpcurl. The project also provides Go packages for embedding a form or complete web UI in a Go HTTP server. Installation is documented through Homebrew on macOS or Linux, and through the Go install command. It is released under the MIT license.