#cqrs #event-sourcing #serverless #lambda

postgres-es2

A Postgres implementation of an event store for cqrs-es2

4 releases

0.2.3 Aug 13, 2021
0.2.2 Aug 12, 2021
0.2.1 Aug 12, 2021
0.2.0 Aug 12, 2021

#13 in #cqrs

MIT license

35KB
879 lines

postgres-es2

A Postgres implementation of the EventStore trait in cqrs-es2.

Publish Test Crates.io docs


Installation

[dependencies]
cqrs-es2 = "^0.2"
serde = { version = "^1.0.127", features = ["derive"] }
serde_json = "^1.0.66"
postgres-es2 = "0.2.3"
postgres = { version = "^0.19.1", features = ["with-serde_json-1"] }

Usage

use postgres::{Client, NoTls};
use postgres_es2::PostgresCqrs;

let connection = Client::connect("postgresql://demo_user:demo_pass@localhost:5432/demo", NoTls).unwrap();
let cqrs = postgres_es2::postgres_cqrs(connection, vec![Box::new(my_query)])

Change log

v0.2.3

  • Fix license documentation
  • Upgrade dev dependencies

v0.2.2

  • Rename Github repo

v0.2.1

  • Fix documentation

v0.2.0

  • Transfer of ownership
  • Upgrade dependencies
  • Add GitHub CI support
  • Convert to a modular structure
  • Automate GitHub deployment

TODO

  • Some additional framework around GenericQueryRepository to simplify event replay.

Demo

A demo application is available here.

Dependencies

~7MB
~152K SLoC