medyll
Profile
← all projects

@medyll/idae-sync

Offline-first sync engine: outbox, retries, conflict resolution

idae-sync syncs local IndexedDB data to a server in the background, even offline. Writes queue in a persistent outbox with exponential backoff, per-collection circuit breakers, a dead letter queue, and pluggable conflict resolution, plus SSE/WebSocket listeners for server push.

Where it sits


flowchart TD
  P["Idae monorepo"] --> S["idae-sync"]
  S --> A["IndexedDB outbox · retries + backoff"]
  S --> B["circuit breaker + dead letter queue"]
  S --> C["mobile-first / server-first per collection"]
  S --> D["SSE/WebSocket push + conflict resolution"]

Overview


Syncs local IndexedDB data to a server automatically, in the background, even offline. Writes are intercepted into an IndexedDB-backed outbox with exponential backoff, circuit breakers, a dead letter queue, and pluggable conflict resolution (last-write-wins, shallow or field-level merge).

Highlights


  • · Outbox + circuit breaker + dead letter queue
  • · mobile-first / server-first sync modes per collection
  • · SSE/WebSocket push listeners, pluggable conflict resolution
TypeScriptIndexedDB
View source →