wavesyncdb
Core library for WaveSyncDB — transparent peer-to-peer sync for SeaORM applications.
Features
- Connection wrapper —
WaveSyncDbimplements SeaORM'sConnectionTrait, intercepting writes transparently - P2P sync — libp2p gossipsub with mDNS discovery, QUIC and TCP transports
- LWW conflict resolution — hybrid logical clocks with deterministic tiebreakers
- Persistent sync log —
_wavesync_logtable tracks all operations for incremental sync - Schema builder — fluent API to register entities for sync or local-only use
Usage
use *;
use WaveSyncDbBuilder;
let db = new
.build
.await?;
// Register entities for sync
db.get_schema_registry
.sync
.await?;
// Use standard SeaORM operations — sync happens automatically
let task = ActiveModel ;
task.insert.await?;
See the root README for full documentation, architecture overview, and Dioxus integration.
License
GPL-3.0-or-later