| Crates.io | entidb_sync_engine |
| lib.rs | entidb_sync_engine |
| version | 2.0.0-alpha.3 |
| created_at | 2025-12-25 15:06:18.595998+00 |
| updated_at | 2026-01-03 03:41:49.725868+00 |
| description | Sync state machine and engine for EntiDB |
| homepage | |
| repository | https://github.com/Tembocs/entidb |
| max_upload_size | |
| id | 2004640 |
| size | 93,475 |
Sync state machine and engine for EntiDB.
This crate implements the synchronization state machine for EntiDB's offline-first architecture. It manages the pull-then-push protocol and handles conflict detection.
┌─────────┐ ┌───────────┐ ┌─────────┐ ┌────────┐
│ Idle │────▶│ Connecting│────▶│ Pulling │────▶│ Pushing│
└─────────┘ └───────────┘ └─────────┘ └────────┘
▲ │
└──────────────────────────────────────────────────┘
(synced)
use entidb_sync_engine::SyncEngine;
let engine = SyncEngine::new(database, config);
engine.sync().await?;
Licensed under either of Apache License, Version 2.0 or MIT license at your option.