https://github.com/katexochen/ttrpcurl
Like cURL, but for ttRPC: Command-line tool for interacting with ttRPC servers
https://github.com/katexochen/ttrpcurl
golang grpc protobuf ttrpc
Last synced: 12 months ago
JSON representation
Like cURL, but for ttRPC: Command-line tool for interacting with ttRPC servers
- Host: GitHub
- URL: https://github.com/katexochen/ttrpcurl
- Owner: katexochen
- License: isc
- Created: 2023-06-29T19:40:22.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-04-05T14:26:46.000Z (12 months ago)
- Last Synced: 2025-04-05T15:27:11.501Z (12 months ago)
- Topics: golang, grpc, protobuf, ttrpc
- Language: Go
- Homepage:
- Size: 122 KB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ttRPCurl
`ttrpcurl` is a command-line tool that lets you interact with [ttRPC](https://github.com/containerd/ttrpc) servers. It's basically curl for ttRPC servers, and is heavily influenced by [gRPCurl](https://github.com/fullstorydev/grpcurl), which does the same thing for gRPC.
> [!NOTE]\
> This project is still in development. Please open an issue if anything doesn't work out for you.
## Installation
Install via the Go command:
```sh
go install github.com/katexochen/ttrpcurl/cmd/ttrpcurl@latest
```
## Usage
The CLI comes with help flags, both global and on each command:
```sh
ttrpcurl --help
ttrpcurl --help
```
## Syntax compatibility with gRPCurl
This tool tries to provide intuitive usability for people familiar with grpcurl. However, as ttrpcurl isn't using Go's native flag package there are some differences. Flags in ttrpcurl require two dashes (`--help`).
## TODOs
- [ ] Improve client-server testscript
- [ ] Support multiple proto files
- [ ] Write unit tests
- [ ] Write e2e tests
- [ ] Support streaming calls
- [ ] Support bidirectional streaming calls
- [ ] Support data from file with `@filename`
- [ ] Support protobuf text format
- [ ] Use timeout and other limits
## Limitations