Show HN: Building a CQRS/ES web application in Elixir using Phoenix

3 points by slashdotdash ↗ HN
A case study describing how I built a web app following the Command Query Responsibility Segregation and event sourcing (CQRS/ES) pattern. In Elixir using the Phoenix Framework.

https://10consulting.com/2017/01/04/building-a-cqrs-web-application-in-elixir-using-phoenix/

It uses two open-source Elixir libraries I've authored to provide the building blocks for such applications:

* EventStore: A CQRS event store that uses PostgreSQL (v9.5 or later) as the underlying storage engine. [1]

* Commanded: Provides support for command registration and dispatch; hosting and delegation to aggregate roots; event handling; and long running process managers. [2]

It's an unorthodox approach to building Phoenix web apps. The article details why you might consider applying it.

[1] https://github.com/slashdotdash/eventstore

[2] https://github.com/slashdotdash/commanded

3 comments

[ 3.6 ms ] story [ 22.0 ms ] thread
Thanks for this. Very in-depth. I just started toying around with ES in Elixir and this definitely helps.

Can the source for the application be found anywhere?

Sorry, the case study web application is closed source.

I plan to build an open-source reference application. I'll write-up the process, with links to commits, as I go. There's a mailing list on my site, or subscribe to the RSS feed, to stay informed.