Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/leandrocp/awesome-cqrs-event-sourcing

A curated list of awesome CQRS and Event Sourcing things
https://github.com/leandrocp/awesome-cqrs-event-sourcing

List: awesome-cqrs-event-sourcing

Last synced: 22 days ago
JSON representation

A curated list of awesome CQRS and Event Sourcing things

Awesome Lists containing this project

README

        

# Awesome CQRS and Event Sourcing [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)

A curated list of awesome CQRS and Event Sourcing things.

Inspired by [all the other awesome things](https://github.com/bayandin/awesome-awesomeness).

## Intro

- [CQRS, Task Based UIs, Event Sourcing agh!](http://codebetter.com/gregyoung/2010/02/16/cqrs-task-based-uis-event-sourcing-agh/)
- [CQRS & Event Sourcing. Talk by The Guild](https://speakerdeck.com/theguildconf/cqrs-and-event-sourcing)

## CQRS

- [CQRS by Martin Fowler](http://martinfowler.com/bliki/CQRS.html)
- [Command/Query Responsibility Segregation](https://gnugat.github.io/2015/08/25/cqrs.html)
- [Clarified CQRS](http://udidahan.com/2009/12/09/clarified-cqrs/)
- [CQRS Journey](http://cqrsjourney.github.io/)
- [Edument](http://cqrs.nu/)

## Event Sourcing

- [Event Sourcing by Martin Fowler](http://martinfowler.com/eaaDev/EventSourcing.html)
- [Event sourcing revisited](https://lostechies.com/gabrielschenker/2015/05/26/event-sourcing-revisited/)
- [Event Sourcing applied – the Aggregate](https://lostechies.com/gabrielschenker/2015/06/06/event-sourcing-applied-the-aggregate/)
- [Event-sourcing, Part I](http://karmajunkie.com/blog/2012/05/05/event-sourcing/)
- [Event sourcing for the rest of us](https://tojans.me/posts/event-sourcing-for-the-rest-of-us/)
- [Achieving Consistency in CQRS with Linear Event Store](http://squirrel.pl/blog/2015/09/14/achieving-consistency-in-cqrs-with-linear-event-store/)
- [Entry-level, synchonous & transactional event sourcing](https://softwaremill.com/entry-level-event-sourcing/)
- [Event Sourcing vs Command Sourcing](http://thinkbeforecoding.com/post/2013/07/28/Event-Sourcing-vs-Command-Sourcing)
- [A Whole System Based on Event Sourcing is an Anti-Pattern](https://www.infoq.com/news/2016/04/event-sourcing-anti-pattern)

## Domain Events

- [Domain Event by Martin Fowler](http://www.martinfowler.com/eaaDev/DomainEvent.html)
- [Domain Event by Mathias Verraes](http://verraes.net/2014/11/domain-events/)

## REST and CQRS

- [REST API Design - Resource Modeling](https://www.thoughtworks.com/insights/blog/rest-api-design-resource-modeling)
- [Exposing CQRS Through a RESTful API](https://www.infoq.com/articles/rest-api-on-cqrs)
- [Reconciling ReST, CQRS and Event Sourcing](http://graemef.com/blog/2012/09/02/Reconciling-ReST-and-CQRS/)
- [CQRS with Elixir and Phoenix](http://jfcloutier.github.io/jekyll/update/2015/11/04/cqrs_elixir_phoenix.html)
- [Should CQRS services be RESTful?](https://groups.google.com/forum/#!topic/dddcqrs/YdTAIcGMXFI%5B1-25%5D)

## Talks (Slides)

- [Event sourcing in practice](http://ookami86.github.io/event-sourcing-in-practice/#title.md)
- [Introduction to Event Sourcing and CQRS with Broadway (PHP Benelux 2016)](https://speakerdeck.com/simensen/introduction-to-event-sourcing-and-cqrs-with-broadway-php-benelux-2016)
- [Building Microservices with Event Sourcing and CQRS](http://www.slideshare.net/mploed/building-microservices-with-event-sourcing-and-cqrs)
- [Building and deploying microservices with event sourcing, CQRS and Docker (QCONSF 2014)](http://pt.slideshare.net/chris.e.richardson/building-and-deploying-microservices-with-event-sourcing-cqrs-and-docker-qconsf-2014)
- [Agile, Architecture, DDD and CQRS](http://www.slideshare.net/jeppec/agile-ddd-cqrs)
- [CQRS recipes or how to cook your architecture](http://www.slideshare.net/tjaskula/cqr-sv2)
- [REST and DDD](https://skillsmatter.com/skillscasts/2325-rest-and-ddd)

## Talks (Videos)

- [Greg Young — A Decade of DDD, CQRS, Event Sourcing](https://www.youtube.com/watch?v=LDW0QWie21s)
- [Greg Young - CQRS and Event Sourcing - Code on the Beach 2014](https://www.youtube.com/watch?v=JHGkaShoyNs)
- [CQRS/DDD by Greg Young](https://www.youtube.com/watch?v=KXqrBySgX-s)
- [GregYoung 8 CQRS Class](https://www.youtube.com/watch?v=whCk1Q87_ZI)
- [Practical Event Sourcing](http://verraes.net/2014/03/practical-event-sourcing/)
- [CQRS with Erlang](https://www.infoq.com/presentations/cqrs-erlang)
- [Building Microservices with Event Sourcing and CQRS](https://www.infoq.com/presentations/microservices-event-sourcing-cqrs)
- [GeeCON 2014: Sandro Mancuso - Crafted Design](https://vimeo.com/101106002)
- [Skills Matter](https://skillsmatter.com/)
- [YOW! Nights March 2016: Martin Fowler - Event Sourcing](https://www.youtube.com/watch?v=aweV9FLTZkU)

## Examples

- [Simple CQRS example](https://github.com/gregoryyoung/m-r)
- [Microsoft patterns & pratices CQRS Journey sample application](https://github.com/mspnp/cqrs-journey)
- [Broadway](http://labs.qandidate.com/blog/2014/08/26/broadway-our-cqrs-es-framework-open-sourced/)
- [Broadway Examples](https://github.com/qandidate-labs/broadway/tree/master/examples)
- [Buttercup.Protects](http://buttercup-php.github.io/protects/)
- [EventCentric.Core](https://github.com/event-centric/EventCentric.Core)
- [A simple event sourcing example with snapshots using lambda and dynamodb](https://theburningmonk.com/2019/08/a-simple-event-sourcing-example-with-snapshots-using-lambda-and-dynamodb/)

## Event Stores

- [EventStoreDB](http://geteventstore.com/) - The stream database built for Event Sourcing
- [EventStore](https://github.com/slashdotdash/eventstore) - An event store using PostgreSQL for persistence written in Elixir
- [Marten DB](https://martendb.io) - .NET Transactional Document DB and Event Store on PostgreSQL.
- [Message DB](http://docs.eventide-project.org/user-guide/message-db/) - PostgreSQL
- [Pravega](https://pravega.io) - Java implementation (CNCF).
- [SQLStreamStore](https://github.com/SqlStreamStore/) - An event/stream store library in .NET with support for PostgreSQL/SQL Server/MySQL etc.
- [DynamoDB EventStore](https://github.com/bakerface/dynamodb-event-store#readme) - An event store implementation on top of Amazon DynamoDB (JavaScript).
- [DynamoDB EventStore](https://github.com/domagojk/beenion/blob/rater/databases/eventstore/dynamoDbEventStore.ts) - Another event store implementation on top of Amazon DynamoDB (TypeScript).
- [DynamoDB EventStore (article)](https://www.agileand.me/dynamodb-event-sourcing-an-aws-architecture.html) - Article on an event store on DynamoDB

## Libraries/Frameworks

- [Commanded](https://hex.pm/packages/commanded) - Elixir CQRS/ES library with support for EventStoreDB
- [Equinox](https://github.com/jet/equinox) - .NET Event Sourcing library with CosmosDB, EventStoreDB, SqlStreamStore and integration test backends.
- [EventFlow](https://github.com/eventflow/EventFlow) - Async/await first CQRS+ES and DDD framework for .NET.
- [Eventuous](https://github.com/Eventuous/eventuous) - Minimalistic Event Sourcing library for .NET (EventStoreDB)
- [Propulsion](https://github.com/jet/propulsion) - .NET event stream projection and scheduling platform with EventStore, CosmosDb, Equinox and Kafka integrations
- [Memstate](https://github.com/DevrexLabs/memstate) - In-memory event-sourced ACID-transactional distributed object graph engine for .NET Standard.
- [castore](https://github.com/castore-dev/castore) - Typescript library to easily implement Event Sourcing on your project

## Books

- [Exploring CQRS and Event Sourcing](https://www.microsoft.com/en-us/download/details.aspx?id=34774)
- [Domain-Driven Design Distilled](http://www.amazon.com/Domain-Driven-Design-Distilled-Vaughn-Vernon/dp/0134434420) - Vaughn Vernon
- [DDD Reference](https://www.domainlanguage.com/ddd/reference/) - A summary of the patterns and definitions of DDD. Eric Evans
- [Versioning in an Event Sourced System](https://leanpub.com/esversioning) - Greg Young

## Twitter

- [Greg Young](https://twitter.com/gregyoung)
- [Daniel Whittaker](https://twitter.com/codescribler)
- [Sandro Mancuso](https://twitter.com/sandromancuso)

## Blogs

- [Mathias Verraes](http://verraes.net/)
- [Vaughn Vernon: Software Craftsman](https://vaughnvernon.co/)
- [CQRS & Event Sourcing by Daniel Whittaker](http://danielwhittaker.me/)
- [Software Design by Rinat Abdullin](https://abdullin.com/)
- [Think Before Coding by Jérémie Chassaing](http://thinkbeforecoding.com/)
- [Konrad Garus](http://squirrel.pl/blog/tag/cqrs/)

## Podcasts

- [Being the Worst](http://www.beingtheworst.com/)

## Community

- [StackOverflow CQRS](http://stackoverflow.com/questions/tagged/cqrs)
- [StackOverflow Event Sourcing](http://stackoverflow.com/questions/tagged/event-sourcing)

## Groups

- [DDD/CQRS](https://groups.google.com/forum/#!forum/dddcqrs)
- [DDDinPHP](https://groups.google.com/forum/#!forum/dddinphp)
- [ddd-cqrs-es/slack-community](https://github.com/ddd-cqrs-es/slack-community)

## Discussions

- [DDD/CQRS/ES/NoSQL and functional programming](http://elixirforum.com/t/ddd-cqrs-es-nosql-and-functional-programming/519)
- [Acting like I don't get the message :-/](https://groups.google.com/d/msg/dddcqrs/5LllWF5ZVLw/TlJ86khgTaYJ)
- [Achieving consistency in CQRS with linear event store](https://www.reddit.com/r/programming/comments/3l0hp1/achieving_consistency_in_cqrs_with_linear_event/)

## Events

- [Domain-Driven Design Europe](http://dddeurope.com/2017/)

## More awesome

- [awesome-ddd](https://github.com/wkjagt/awesome-ddd)

## License

[![CC0](http://i.creativecommons.org/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/)

To the extent possible under law, [@leandrocp](https://github.com/leandrocp) has waived all copyright and related or neighboring rights to this work.