Lokad.CQRS

Lokad.CQRS is a .NET framework and a set of guidance materials for building distributed and scalable applications to be run on-premises or in the cloud. This project helps to design and develop decoupled systems locally and bring them to the distributed environments later.


Keywords
CQRS
License
BSD-3-Clause
Install
Install-Package Lokad.CQRS -Version 2.0.0

Documentation

The project is not maintained anymore.

Visit Lokad.CQRS Homepage

Lokad.CQRS is a sample project from Lokad to share experience with Command and Query Responsibility Segregation/Domain-Driven Design (CQRS/DDD) and Event Sourcing (ES).

It includes the source code of components and tools that have saved days in development and production.

Geek alert: Lokad.CQRS also shows you how to build scalable distributed systems that could run locally, in the cloud, or both.

The Lokad.CQRS Sample Project is NOT a framework. It also is not the only way to do CQRS. It is just a sample for one of the many ways to provide the technical implementation for a given Bounded Context.

If you have a team that is friendly with all of these at once: DDD, CQRS and ES, then this specific CQRS architectural style would be a cheap and reliable way for you to rapidly deliver complex domain models to a continuously changing world.

If this team is also enhanced with cloud computing experience and lean development practices, project deliverables could be easily evolved and deployed to various environments: starting from on-premises and then up to the cloud.

Cloud deployments and massive scalability are side effects of the Lokad.CQRS architecture style. These are valuable, but less important than:

  • Understanding and applying DDD to these projects

  • Having people with the proper skills for such projects

  • Low-friction development for these projects

The CQRS architecture style that is used by Lokad is based on these principles. It will only be applicable if your environment also matches these principles.

Continuous Version

At the moment of writing, the version with continuous deployment that was in the 'anatomy' branch has been merged back into that master branch of this project. 'master' now contains the most recent code again.