Hadron

Ruby framework called Hadron that allows you to work with gRPC Ruby output easily.

Installation

Install the gem and add to the application's Gemfile by executing:

$ bundle add hadron

If bundler is not being used to manage dependencies, install the gem by executing:

$ gem install hadron

Usage

Once you have installed the gem, you can use it to create a new Ruby project by running the following command:

$ hadron create my_project

This will create a new Ruby project called my_project that uses the Hadron framework. You can then add gRPC support to your project by including the grpc gem in your project's Gemfile and running bundle install to install the gem.

For example, your Gemfile might look like this:

source 'https://rubygems.org'

gem 'hadron'
gem 'grpc'

Once you have added the grpc gem to your project, you can use it to work with gRPC output easily in your Ruby code. For example, you might use it to define a gRPC service and implement its methods, as shown in the following code snippet:

class MyService < Hadron::Service
  rpc :say_hello, HelloRequest, HelloResponse

  def say_hello(request, _call)
    HelloResponse.new(message: "Hello, #{request.name}!")
  end
end

This code defines a gRPC service called MyService that has a single method called say_hello. This method takes a HelloRequest and returns a HelloResponse containing a greeting message.

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and the created tag, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/Sylvance/hadron. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.

Code of Conduct

Everyone interacting in the Hadron project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.