sqliteai/sqlite-sync

CRDT-based offline-first sync for SQLite. Syncs automatically with SQLite Cloud, PostgreSQL, and Supabase. No conflicts, no data loss, no backend to build. For offline-first apps and AI agents.

解決的問題

SQLite-Sync 提供了一種將本地 SQLite 資料庫轉換為離線優先副本的方法,可自動與遠端伺服器(如 SQLite Cloud、PostgreSQL 或 Supabase)同步。它消除了開發者必須自行建構自訂同步協定或後端基礎設施來處理多個裝置或 AI 代理實例間資料一致性需求的必要性。

工作原理

此專案使用衝突無關的複製資料類型(CRDT)確保在不同裝置上進行的更新——即使在離線狀態下——也能自動且決定性地合併,而不會造成資料遺失或需要手動解決衝突。它包含內建的網路層,並支援「區塊層級 LWW」(最後寫入者勝出),可保留對文字或 Markdown 檔案不同行的並行編輯,而不是覆蓋整個單元格。

適用對象

  • 應用開發者:正在建構離線優先的行動、桌面或 IoT 應用(例如共用待辦事項清單、筆記應用或現場資料收集工具)的人。
  • AI 代理開發者:需要在不同實例之間共享狀態、記憶或知識庫,而無需中央協調者的人。
  • 企業開發者:正在建構多租戶 SaaS 平台或 CRM 系統,需要行層級安全(RLS)來隔離使用者資料的人。

主要亮點

  • 基於 CRDT 的同步:使用因果長度集合和刪除勝出等演算法,確保資料收斂。
  • 區塊層級 LWW:專為 Markdown 和文字欄位設計的行層級合併機制。
  • 多平台支援:支援 Linux、macOS、Windows、iOS、Android 和 WASM。
  • 伺服器強制 RLS:行層級安全確保客戶端僅同步其有權限存取的資料。
  • 即插即用後端:相容 SQLite Cloud、PostgreSQL 和 Supabase。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • Dispatch