eventually-util

Crates.ioeventually-util
lib.rseventually-util
version0.4.0
sourcesrc
created_at2020-05-15 19:53:22.744748
updated_at2020-10-04 21:22:56.66445
descriptionExtension crate containing utility components for using Event Sourcing in Rust applications
homepage
repositoryhttps://github.com/ar3s3ru/eventually-rs
max_upload_size
id242142
size35,569
Danilo Cianfrone (ar3s3ru)

documentation

README


Eventually

Event Sourcing for Rust

GitHub Workflow Status Codecov Crates.io latest master docs docs.rs docs GitHub license Gitter

Collection of traits and other utilities to help you build your Event-sourced applications in Rust.

What is Event Sourcing?

Before diving into the crate's internals,you might be wondering what Event Sourcing is.

From eventstore.com introduction:

Event Sourcing is an architectural pattern that is gaining popularity as a method for building modern systems. Unlike traditional databases which only store and update the current state of data, event-sourced systems store all changes as an immutable series of events in the order that they occurred and current state is derived from that event log.

How does eventually support Event Sourcing?

eventually exposes all the necessary abstraction to model your Doman Entities (in lingo, Aggregates) using Domain Events, and to save these Events using an Event Store (the append-only event log).

For more information, check out the crate documentation.

You can also take a look at eventually-app-example, showcasing an example event-sourced microservice using HTTP transport layer.

All other questions are more than welcome on our Gitter chat.

Installation

Add eventually into your project dependencies:

[dependencies]
eventually = { version = "0.4.0", features = ["full"] }

Note on semantic versioning

This library is actively being developed, and prior to v1 release the following Semantic versioning is being adopted:

  • Breaking changes are tagged with a new MINOR release
  • New features, patches and documentation are tagged with a new PATCH release

License

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in eventually-rs by you, shall be licensed as MIT, without any additional terms or conditions.

Commit count: 169

cargo fmt