grpcmock-go vs sabledocs
grpcmock-go
github.comsabledocs
markvincze.github.ioSide by side
| Figure | grpcmock-go | sabledocs |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| Self-hosted | Yes | — |
| Plans published | 1 | 1 |
| Spec score · gRPC Tools | 8.1 (#6) | 7.8 (#14) |
| Prerequisite | The README lists Go 1.25 or later as a prerequisite. | The package requires Python 3.11 or higher, and the build process uses a binary descriptor generated with protoc. |
| Purpose | grpcmock is a set of gRPC test utilities for Golang. | Sabledocs is a static documentation generator for Protobuf and gRPC contracts. |
Plans
In their own words
grpcmock-go
grpcmock-go is a free, MIT-licensed Go module providing gRPC testing utilities. It helps tests mock gRPC servers, configure expectations for methods, headers, and payloads, and invoke client calls. Supported methods include unary, client-streaming, server-streaming, and bidirectional-streaming patterns. Request matching can use exact values, regular expressions, JSON, or custom matchers. Mock responses may return payloads, errors, or custom-handler results, and streaming client invocations can use custom handlers. Services can be registered from generated Go code, service instances, or individual methods when generated code is unavailable. The project recommends MockServerWithBufConn for in-memory application testing, with examples using bufconn listeners and context dialers. Installation uses `go get go.nhat.io/grpcmock`, and Go 1.25 or later is required. GitHub lists v0.34.0, released December 12, 2025, as the latest release. The Open-source Go module plan costs nothing.
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.