Skip to main content

aion_store_libsql/
lib.rs

1//! Durable libSQL-backed event-store implementation for Aion workflows.
2//!
3//! The crate opens embedded or embedded-replica libSQL databases, applies the
4//! Aion schema, and implements the `aion_store` history, timer, and visibility
5//! traits through `LibSqlStore`.
6//!
7//! # Example
8//!
9//! ```no_run
10//! # async fn example() -> Result<(), Box<dyn std::error::Error>> {
11//! use aion_store_libsql::LibSqlStore;
12//!
13//! let store = LibSqlStore::open("aion.db").await?;
14//! store.validate_event_compatibility().await?;
15//! # Ok(())
16//! # }
17//! ```
18
19mod append;
20/// Operator-facing libSQL connection configuration.
21pub mod config;
22/// libSQL database and connection opening helpers.
23pub mod connection;
24/// Error conversion helpers for libSQL-backed storage.
25pub mod error;
26mod read;
27/// Idempotent schema creation for the libSQL event store.
28pub mod schema;
29/// `LibSqlStore` and its event-store trait implementations.
30pub mod store;
31mod timer;
32mod visibility;
33
34pub use config::{LibSqlConfig, LibSqlMode};
35pub use store::LibSqlStore;