Baike.dev
All toolsAI codingTrendingOpen sourceNewsSubmit
Log in
< Back to tools
R

rails_event_store

> 后端框架
Open source

A Ruby implementation of an Event Store based on Active Record

1.6K stars0 likes2 views
WebsiteGitHub

About

A Ruby implementation of an Event Store based on Active Record

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

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

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

  • Why I want to introduce mutation testing to the rails_event_store gem
  • Mutation testing and continuous integration

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

RailsEventStore gems

Name CI Version Downloads rails_event_store ruby_event_store-active_record ruby_event_store ruby_event_store-browser ruby_event_store-rspec aggregate_root

Contributed gems

Name CI Version Downloads ruby_event_store-outbox ruby_event_store-protobuf ruby_event_store-profiler ruby_event_store-flipper ruby_event_store-transformations ruby_event_store-rom ruby_event_store-sidekiq_scheduler ruby_event_store-cli ruby_event_store-mcp ruby_event_store-process_manager ruby_event_store-sequel

Unreleased contributed gems

Name CI ruby_event_store-newrelic minitest-ruby_event_store dres_rails dres_client

About

GitHub Issues· 0 open

View all on GitHub

No open issues yet, or sync has not completed.

Highlights

  • •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
  • •Why I want to introduce mutation testing to the rails_event_store gem

> Tags

Rubyaggregate-rootcqrscqrs-esddd

No comments yet. Be the first to share.

> Details

PublishedAug 1, 2026
UpdatedSep 17, 2026
Category后端框架
PricingOpen source

> Related tools

N
Node.js
基于 V8 的 JavaScript 运行时
D
Django
Python 高级 Web 框架
S
Spring Boot
Java 生态主流微服务框架