A Ruby implementation of an Event Store based on Active Record
Clone or download
pawelpacana Drop bundler dependency.
Ruby 2.6 now ships with it and I find it hard to believe one does not
have it.

With today's release of backward-compatible bundler 2.0 this version specification would be
problematic anyway.
Latest commit c6f0114 Jan 3, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Proper DATABASE_URL depending on gem name Jan 3, 2019
aggregate_root Superfluous example. Dec 8, 2018
bounded_context Version v0.35.0 Dec 7, 2018
lib Drop bundler dependency. Jan 3, 2019
rails_event_store-rspec Version v0.35.0 Dec 7, 2018
rails_event_store Provide own native gems for Ruby 2.6 and Protobuf. Jan 2, 2019
rails_event_store_active_record-legacy Missing gems install for subprocess test. Dec 9, 2018
rails_event_store_active_record Trigger travi-ci rebuild after org->com migration. Dec 12, 2018
railseventstore.org Added note about upserts to docs Dec 30, 2018
ruby_event_store-browser Seems to be obsolete Jan 3, 2019
ruby_event_store-rom Only run test if sqlite database Dec 30, 2018
ruby_event_store Provide own native gems for Ruby 2.6 and Protobuf. Jan 2, 2019
.gitignore Ignore conflict backup files Dec 29, 2018
.travis.yml Remove cases covered on CircleCI Jan 3, 2019
APP_TEMPLATE Version v0.35.0 Dec 7, 2018
CONTRIBUTING.md Direct link to contributing guide. Nov 15, 2018
Dockerfile Alpine is a dead end for protobuf, revert to glibc-based docker image. Jan 3, 2019
LICENSE Bump year in licenses. Mar 20, 2018
Makefile Include APP_TEMPLATE in changed-version commit. Dec 7, 2018
README.md Migrated from org -> com Dec 11, 2018
RELEASE.md Up-to-date compare link. Oct 12, 2018
RES_VERSION Version v0.35.0 Dec 7, 2018
docker-compose.yml Sometimes it is simpler to start with less assumptions. Dec 4, 2018
netlify.toml Refresh contributors on each site build. Mar 26, 2018

README.md

Rails Event Store

Rails Event Store (RES) is a library for publishing, consuming, storing and retrieving events. It's your best companion for going with an event-driven architecture for your Rails application.

You can use it:

  • as your Publish-Subscribe bus
  • to decouple core business logic from external concerns in Hexagonal style architectures
  • as an alternative to ActiveRecord callbacks and Observers
  • as a communication layer between loosely coupled components
  • to react to published events synchronously or asynchronously
  • to extract side-effects (notifications, metrics etc) from your controllers and services into event handlers
  • to build an audit-log
  • to create read-models
  • to implement event-sourcing

Documentation

Documentation, tutorials and code samples are available at https://railseventstore.org.

Code status

Build Status CircleCI Gem Version

We're aiming for 100% mutation coverage in this project. This is why:

Whenever you fix a bug or add a new feature, we require that the coverage doesn't go down.

Contributing

This single repository hosts several gems and website with documentation. Check the contribution guide.

About

Arkency

This repository is funded and maintained by Arkency. Check out our other open-source projects and what else we have at RES.

Consider hiring us and make sure to check out our blog.

Learn more about DDD & Event Sourcing

Check our Rails + Domain Driven Design Workshop. Why You should attend? Robert has explained this in a blogpost.

Read about Domain Driven Rails

You may also consider buying the Domain-Driven Rails book.