Twirp is a protocol for routing and serialization of services defined in a .proto file, allowing easy implementation of RPC services with auto-generated clients in different languages.
The canonical implementation is in Golang. The Twirp-Ruby project is the official implementation in Ruby for both server and clients.
Add gem "twirp"
to your Gemfile, or install with gem install twirp
.
To auto-generate Ruby code from a proto file, use the protoc
plugin and the --ruby_out
option (see Wiki page).