I realize this question is more CQRS+ES than it is specific to EventStore. But we’ve made the decision to use EventStore as our storage and we are about to undertake our first CQRS+ES project, so I was hoping for a little direction from the community.
We are looking for a .NET library/framework to jump-start our development using these new techniques. We would like to find a library that:
- easily (or natively) supports EventStore
- has command handlers / event handlers wired up
- supports snapshots
- is opinionated
We have looked at several options but nothing jumps out as the obvious choice. I keep thinking that I’m missing something because this is something that I would expect every .NET development team starting with CQRS+ES+EventStore to look into. We have looked at the following libraries/projects. Any feedback, opinions or experiences, are very welcome and desired.
- Edument
- CQRS Starter Kit - http://www.cqrs.nu/ -
seems like a well thought-out starting point, but lacks a community (google
group has about 1 new topic per year).
- CQRS Starter Kit - http://www.cqrs.nu/ -
- SimpleCQRS
– by tyronegroves - https://github.com/tyronegroves/SimpleCQRS- Seems like a decent start but is lacking some “architectural robustness”. Hasn’t been updated since 2011.
- SimpleCQRS
– by Greg Young – https://github.com/gregoryyoung/m-r- A good demo and starting point but seems to leave a lot still to be developed
into a reusable, robust CQRS framework.
- A good demo and starting point but seems to leave a lot still to be developed
- NEventStore
– Jonathan Oliver – http://neventstore.org/- Seems like a project that has been battle-tested. All of their stores are SQL or NoSQL, no
native support for GetEventStore as a storage system but we could of course
write our own “driver”. However, unless
I’m missing something in their documentation, it appears to be fairly agnostic
regarding how to implement aggregates, commands, etc. It seems to focus on the storing of events
and that’s it.
- Seems like a project that has been battle-tested. All of their stores are SQL or NoSQL, no