You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Bèr Kessels f4e3c25f1b Set superlinter to use the common rubocop default for this project 1 week ago
.github/workflows Set superlinter to use the common rubocop default for this project 1 week ago
app Use Better Errors to give more context in failures of http requests 2 weeks ago
config Setup to be able to run the first test 3 weeks ago
test Use Better Errors to give more context in failures of http requests 2 weeks ago
.env.template Add env template 1 week ago
.gitignore Add dotenv and use env vars to lod and connect to database 3 weeks ago
.rubocop.yml Introduce rubocop 3 weeks ago
.ruby-version Bootstrap with event_sourcery_cli 3 weeks ago
Gemfile Ensure all is in place to run the initial test 3 weeks ago
Gemfile.lock Ensure all is in place to run the initial test 3 weeks ago
LICENSE Initial commit 1 week ago
Makefile Run with shotgun 3 weeks ago
Procfile Bootstrap with event_sourcery_cli 3 weeks ago
README.md Bootstrap with event_sourcery_cli 3 weeks ago
Rakefile Setup to be able to run the first test 3 weeks ago
app.json Bootstrap with event_sourcery_cli 3 weeks ago
config.ru Introduce rubocop 3 weeks ago

README.md

Roost

Deploy

Get started

Ensure you have Postgres and Ruby 2.3 or higher installed, then run the setup script:

$ ./script/setup

Using the Application

Start the web server and processors (reactors and projectors):

$ foreman start

Adding features

Generate a new aggregate, command and event:

$ eventsourcery generate:command recipe add

Generate a query and projection that subscribes to events:

$ eventsourcery generate:query active_recipes recipe_added

Generate a reactor that subscribes to events:

$ eventsourcery generate:reactor recipe_publisher recipe_added recipe_deleted