AltHub

twitchtv/twirp Alternatives

protobuf RPC / service-to-service communication

Twirp is a Go RPC framework that generates lightweight server/client code from Protocol Buffer service definitions and runs over standard HTTP with JSON support as a simpler alternative to gRPC.

7.5kGoApache-2.0dormant · last push 2.2y agoGitHub

Drop-in peers

Same problem, same approach. Swapping one for another is a config change, not a rewrite.

connectrpc/connect-goGitHub

Choose over Twirp when you need gRPC interoperability, streaming, and active development while keeping Twirp-like HTTP simplicity.

The Go implementation of Connect: Protobuf RPC that works.

4.1k
Go
Apache-2.0
active1mo ago

Same job, different approach

Solves the same problem with a different architecture or at a different layer. Expect to rewrite the integration.

cloudwego/kitexGitHub

Use when you need a high-performance, feature-rich Go microservice RPC framework with protobuf/thrift and service governance, at the cost of much greater complexity than Twirp.

Go RPC framework with high-performance and strong-extensibility for building micro-services.

8.0k
Go
Apache-2.0
active1mo ago
apache/dubbo-goGitHub

Choose for Apache Dubbo-compatible Go services with mature microservice capabilities and protobuf support when Dubbo integration outweighs Twirp's minimalism.

Go Implementation For Apache Dubbo .

5.0k
Go
Apache-2.0
active1mo ago
storj/drpcGitHub

Pick for a lightweight Go RPC framework over a custom streaming protocol when you don't need HTTP/1.1 JSON debuggability and want lower overhead than gRPC.

drpc is a lightweight, drop-in replacement for gRPC

1.6k
Go
MIT
active2mo ago
elixir-grpc/grpcGitHub

Use when the RPC service is written in Elixir and you prefer gRPC over HTTP/2 rather than Twirp's HTTP/1.1 design.

An Elixir implementation of gRPC

1.5k
Elixir
Apache-2.0
active28d ago
connectrpc/connect-esGitHub

Use for TypeScript services/clients when you want Connect/gRPC interoperability with a Twirp-like API, rather than calling a Go Twirp server directly.

The TypeScript implementation of Connect: Protobuf RPC that works.

1.8k
TypeScript
Apache-2.0
active18d ago

Older generation, or narrower

An earlier or more limited way to do the job. Still the right call when you need something small, proven, or CPU-only.

stepancheg/grpc-rustGitHub

An archived legacy Rust gRPC implementation; choose only for maintaining an old Rust gRPC stack, not for new work where Twirp or current Rust alternatives fit.

Rust implementation of gRPC

1.4k
Rust
MIT
archived2.5y ago

Listed as an alternative to

These projects were analysed and named twirp among their alternatives. The relationship is not symmetric — how twirp rates them is a separate judgement, made when twirp is analysed in its own right.

cloudwego/kitexGitHub

calls twirp “choose it for a simple HTTP-based protobuf RPC with less moving parts, if you accept no recent maintenance.”

Go RPC framework with high-performance and strong-extensibility for building micro-services.

8.0kGoactive