#cqrs #event-sourcing #serverless

postgres-es

A Postgres implementation of an event repository for cqrs-es

33 releases

0.4.12 Sep 13, 2024
0.4.11 Feb 20, 2024
0.4.10 Aug 27, 2023
0.4.9 May 27, 2023
0.0.18 May 5, 2020

#375 in Database interfaces

Download history 69/week @ 2025-05-28 105/week @ 2025-06-04 59/week @ 2025-06-11 163/week @ 2025-06-18 40/week @ 2025-06-25 25/week @ 2025-07-02 82/week @ 2025-07-09 11/week @ 2025-07-16 32/week @ 2025-07-23 21/week @ 2025-07-30 29/week @ 2025-08-06 135/week @ 2025-08-13 88/week @ 2025-08-20 87/week @ 2025-08-27 44/week @ 2025-09-03 10/week @ 2025-09-10

292 downloads per month

Apache-2.0

47KB
1K SLoC

postgres-es

A Postgres implementation of the PersistedEventRepository trait in cqrs-es.


Usage

Add to your Cargo.toml file:

[dependencies]
cqrs-es = "0.4.11"
postgres-es = "0.4.11"

Requires access to a Postgres DB with existing tables. See:

A simple configuration example:

let store = default_postgress_pool("postgresql://my_user:my_pass@localhost:5432/my_db");
let cqrs = postgres_es::postgres_cqrs(pool, vec![])

Things that could be helpful:

Runtime and TLS configuration

This package defaults to expect the Tokio runtime and the Rustls library for TLS. If a different combination is desired the appropriate feature flag should be used:

  • runtime-tokio-native-tls
  • runtime-tokio-rustls (default)
  • runtime-async-std-native-tls
  • runtime-async-std-rustls
  • runtime-actix-native-tls
  • runtime-actix-rustls

Crates.io docs docs

Dependencies

~13–24MB
~335K SLoC