SQLiteSync is a powerful SQLite extension that provides a local-first experience using Conflict-Free Replicated Data Types (CRDTs). Designed to enable seamless data synchronization and collaboration, SQLiteSync allows developers to build distributed applications with minimal effort while leveraging the reliability and simplicity of SQLite.
- Offline-First by Design: Works seamlessly even when devices are offline. Changes are queued locally and synced automatically when connectivity is restored.
- CRDT-Based Conflict Resolution: Merges updates deterministically and efficiently, ensuring eventual consistency across all replicas without the need for complex merge logic.
- Embedded Network Layer: No external libraries or sync servers required. SQLiteSync handles connection setup, message encoding, retries, and state reconciliation internally.
- Drop-in Simplicity: Just load the extension into SQLite and start syncing. No need to implement custom protocols or state machines.
- Efficient and Resilient: Optimized binary encoding, automatic batching, and robust retry logic make synchronization fast and reliable even on flaky networks.
Whether you're building a mobile app, IoT device, or desktop tool, SQLiteSync simplifies distributed data management and unlocks the full potential of SQLite in decentralized environments.
Download the appropriate pre-built binary for your platform from the official Releases page:
- Linux: x86 and ARM
- macOS: x86 and ARM
- Windows: x86
- Android
- iOS
-- In SQLite CLI
.load ./cloudsync
-- In SQL
SELECT load_extension('./cloudsync');