ghz vs sabledocs
ghz
ghz.shsabledocs
markvincze.github.ioSide by side
| Figure | ghz | sabledocs |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| API | Yes | — |
| Self-hosted | Yes | — |
| Plans published | 1 | 1 |
| Spec score · gRPC Tools | 8.7 (#2) | 7.8 (#14) |
| 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. | Sabledocs is a static documentation generator for Protobuf and gRPC contracts. |
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.
sabledocs
Sabledocs is a free, open-source command-line generator for static HTML documentation of Protobuf and gRPC contracts. It can create one documentation site for multiple packages and combine material for Protobuf and gRPC. The input is a binary descriptor generated with protoc; comments require the descriptor to include source information. Search is enabled by default and can use a prebuilt Lunr index, while Markdown is supported in the main content page and Protobuf comments. Configuration in sabledocs.toml covers items such as titles, paths, package visibility, member ordering, and comment filtering. Jinja templates can be customized for primary content, and extra templates can be added to the output. Users can configure source links for Protobuf model members in GitHub, Bitbucket, Bitbucket Data Center, and GitLab repositories. The generator writes the site to sabledocs_output, where it can be opened through index.html. Sabledocs requires Python 3.11 or higher and is installed with pip install sabledocs. A Docker image includes both protoc and Sabledocs.