/event_store_client

Ruby integration for https://eventstore.org

Primary LanguageRubyMIT LicenseMIT

Run tests Gem Version

EventStoreClient

An easy-to use GRPC API client for connecting ruby applications with EventStoreDB.

Requirements

event_store_client gem requires:

  • ruby 3.0 or newer.
  • EventstoreDB version >= "20.*".

Installation

Add this line to your application's Gemfile:

gem 'event_store_client'

And then execute:

$ bundle

Or install it yourself as:

$ gem install event_store_client

Usage

Before you start, make sure you are connecting to a running EventStoreDB instance. For a detailed guide see: EventStoreServerSetup

See documentation chapters for the usage reference:

Subscriptions

We have written a gem that helps you to manage and handle Catch-up Subscriptions - event_store_subscription. You could check it here.

Contributing

Do you want to contribute? Welcome!

  1. Fork repository
  2. Create Issue
  3. Create PR ;)

Re-generating GRPC files from Proto

If you need to re-generate GRPC files from Proto files - there is a tool to do it. Just run this command:

bin/rebuild_protos

Running tests and development console

You will have to install Docker first. It is needed to run EventStore DB. You can run EventStore DB with this command:

docker-compose -f docker-compose-cluster.yml up

Now you can enter the dev console by running bin/console or run tests by running rspec command.

Publishing a new version

  1. Push commit with updated version.rb file to the release branch. The new version will be automatically pushed to rubygems.
  2. Create release on github including change log.

License

The gem is available as open source under the terms of the MIT License.