Sequent - CQRS & event sourcing framework for Ruby
Sequent is an opinionated CQRS and event sourcing framework (ES) written in Ruby. This site is intended to help you learn and develop CQRS / ES applications in Ruby (using Sequent). Sequent focusses on the domain logic of your application. It is web framework agnostic. You can use it with Rails, Sinatra or whatever framework you like.
Note: This documentation applies to the master branch
Introduction
There are several guides available:
1. Getting Started
New to Sequent? The getting started guide is the place to be!
2. Modelling the domain
In this guide we will use the Sequent concepts and create and code a first domain model of our blog application. Go checkout the modelling the domain guide for step by step tutorial to create an app from scatch.
3. Building a web-application
In the building a web-application guide we continue with the application created in the modelling the domain guide and add a web interface for it using the Sinatra web framework.
4. Finishing the webapplication
In the finishing the web-application guide we continue with the blog application and add form validation and let the Author’s add Posts.
Rails & Sequent
The Rails & Sequent guide shows how to use Sequent in a Rails application.
Reference Guide
Next to the tutorials there is the Reference Guide to provide and
in-depth explanation of the several concepts (like AggregateRoot
, Event
, Command
etc) used in Sequent.
Upgrade Guide
If you wish to upgrade your code and database to Sequent 8 from an older version please read the Upgrade Guide.
Further reading
There is a lot more information available on CQRS and event sourcing:
- Event sourcing
- Lars and Bob’s presentation at GOTO Amsterdam
- Erik’s blog series
- Simple CQRS example by Greg Young
License
Sequent is released under the MIT License.