[tooling] · · 2 min read
Syncular: An Offline-First SQLite Sync Engine Built on a Server-Side Commit Log
Syncular brings offline-first sync to SQLite with a server-owned commit log, native clients across platforms, and a conformance-tested wire protocol.
By ByteBulletin Editors · Editorial Team
Syncular is a new open-source project that aims to simplify offline-first development by keeping a full SQLite database on each client and synchronizing it through a server-side commit log. The project, currently pre-1.0 and maintained by Benjamin Kniffler, is designed for apps that need to read from local SQLite and keep working without a network connection. Writes apply instantly to the local database, get queued in an outbox, and are synced to the server when connectivity allows.
The architecture separates concerns cleanly. Clients run SQLite in the browser via OPFS, while native integrations share a Rust core with Swift, Kotlin, Flutter, React Native, and Tauri. On the server side, Bun, Node, or Cloudflare Workers can run with SQLite, Postgres, or D1. A server-side SyncClient provides persistent SQLite for backend services, while a database-less SyncRemoteClient lets you submit commits and call registered operations without maintaining a local database. Applications can store domain actions as event rows alongside their writes, which is useful for auditing and event sourcing.
One of the more distinctive aspects is the project's rigor around the wire protocol. The specification is written down, and there are byte-level fixtures in spec/vectors. Both the TypeScript and Rust cores run a shared conformance catalog, ensuring that any behavior change affecting both implementations must update the spec and add a conformance scenario. Integration tests use deterministic fault injection and explicit readiness signals, avoiding flaky sleeps.
Kniffler is transparent about the project's use of AI assistance: the README, docs, tests, and benchmarks have had LLM help, but the core concepts and first implementations are hand-written, informed by years of offline-first work and studies of existing systems like PowerSync, Zero, Electric, Replicache, Turso, LiveStore, and Jazz. Contributions with LLM help are welcome, but must be disclosed in the pull request description, and blindly pasted model output is closed.
For developers evaluating offline-first tooling, Syncular's commit-log approach is a familiar pattern, but its focus on a formally specified protocol and cross-platform native support makes it worth watching as it approaches 1.0.
SHARE
RELATED

[tooling] ·
Rust fec crate brings faster forward error correction to SDR and satellite links
A new Rust library, fec, implements CCSDS-standard convolutional and Reed-Solomon codes with SIMD acceleration that outperforms the reference C library in every benchmark.
[tooling] ·
Goulash: An LLM-Powered Copilot for Your Terminal That Respects Your Flow
Goulash is a free, open-source overlay that brings LLM suggestions directly into your shell, keeping you in the zone without context-switching to a browser or agent.
[tooling] ·
Aurora AI Gateway: A New Self-Hosted, Open-Source Option for Unified LLM Access
Aurora is an Apache-2.0, self-hosted gateway that lets developers route requests to dozens of AI providers through a single OpenAI- or Anthropic-compatible API.