| Crates.io | cqrs |
| lib.rs | cqrs |
| version | 0.3.1 |
| created_at | 2019-02-01 17:55:29.059126+00 |
| updated_at | 2019-08-07 18:26:21.333314+00 |
| description | An event-sourced command-query system |
| homepage | |
| repository | https://github.com/cq-rs/cqrs |
| max_upload_size | |
| id | 112055 |
| size | 58,566 |
cqrs is an event-driven framework for writing software that uses events as
the "source of truth" and implements command–query responsibility separation (CQRS).
The framework is built around a few key concepts:
The framework is written to be applicable to a generic backend, with an implementation provided for a PostgreSQL backend.
For an example of how to construct a domain which includes aggregates, events,
and commands, look at the cqrs-todo-core crate, which is a simple to-do list
implementation.
The source repository also contains a binary in the cqrs-todoql-psql directory
which demonstrates the use of the todo domain in concert with the PostgreSQL
backend and a GraphQL frontend using the juniper crate.
To build all crates in this repository:
cargo build
To test all crates and documentation:
cargo test
To compile documentation for the crates in the repository (remove --no-deps
to also include documentation for dependencies; add --open to automatically
open the documentation in a browser):
cargo doc --no-deps
This crate aims to support the wasm32-unknown-unknown target for the cqrs,
cqrs-core, and cqrs-todo-core crates. To build against this target, execute:
cargo build --target=wasm32-unknown-unknown -p cqrs-core -p cqrs -p cqrs-todo-core
cqrs is openly-licensed under the Apache-2.0 license.