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 cannonical implementation is in Golang. The Twirp-Ruby project in this repository is the Ruby implementation.
Add gem "twirp"
to your Gemfile, or install with gem install twirp
.
- Given a
.proto
file, generate Twirp services and clients in Ruby. - Implement RPC methods in a plain object called Service Handler.
- Mount the service as a Rack app.
- Service hooks for integrations and monitoring.
- Generated clients.