sqlsync: Synchronize Collaborative SQLite State Offline

sqlsync: Synchronize Collaborative SQLite State Offline

Summary

SQLSync wraps SQLite to let web applications share database state across users, devices, and the edge, including during network interruptions. It suits teams building local-first apps that need reactive queries and collaborative updates.

At a glance

Language
Rust
License
Apache-2.0
Stars
2.9k
Forks
42
Added to OSRepos
February 18, 2026
Last analyzed
October 4, 2026
View on GitHub

Topics

Click on any tag to explore related repositories

Use at your own risk

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.

Overview

SQLSync is a Rust project for building collaborative web applications around SQLite. It aims to keep application data usable locally and synchronize changes between users, devices, and edge environments, rather than requiring every interaction to depend on a continuously available network connection.

It is a fit for applications whose data can be represented in SQLite and where multiple people need to work on shared state. The repository also provides a React library and describes reactive query subscriptions, optimistic reads and writes, and cross-tab synchronization.

Key Features

  • Eventually consistent SQLite state.
  • Optimistic reads and writes.
  • Reactive query subscriptions.
  • Real-time collaboration between users.
  • Offline-first operation.
  • Cross-tab synchronization.
  • A React library for web applications.

Use Cases

  • Build collaborative, file-oriented web apps where each document or file can have its own database.
  • Let users continue working with app data during unreliable or unavailable network connections.
  • Run application state at the edge while tolerating intermittent connectivity.
  • Add optimistic mutations to SQLite read replicas.

Project Facts

  • Language: Rust
  • License: Apache-2.0
  • Stars: 2.9k
  • Forks: 42
  • Topics: collaborative, database, local-first, offline-first, relational-database, sql, sqlite, sqlsync
  • Archived: No

Getting Started

Read the getting started guide for setup and integration details. The repository also links to a Todo list demo for trying collaborative behavior in a browser.

Alternatives

  • yjs-cf-ws-provider: It relays Yjs document updates through Cloudflare Workers, rather than syncing SQLite databases with reactive queries.

Considerations

  • SQLSync is designed around SQLite, so it is most appropriate when the application's data model can be represented relationally in SQLite.
  • The README describes eventual consistency, so applications should be designed with synchronization rather than immediate global consistency in mind.
  • SQLSync runs in a shared web worker by default. This enables sharing a database across tabs, but makes browser debugging less direct.
  • Its execute calls support one SQL statement at a time. Separate multiple statements into individual calls to avoid trailing statements being ignored.

Comparisons

Source repository

Open the original repository on GitHub.

11 counted GitHub visits

View on GitHub

Related repositories

Similar repositories that may be relevant next.

OS
OSRepos

Analysis and discovery of open source repositories. Find interesting projects and follow their updates.

Monitor your website with YourWebsiteScore

OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of third-party repository code is at your own risk. Always review source code, dependencies, licenses, and security implications before running anything.

© 2025 OSRepos. Built with Nuxt 3 and lots of ❤️