{"repo":"JustVugg/loomabase","free":true,"listed":false,"github":"https://github.com/JustVugg/loomabase","clone":"git clone https://github.com/JustVugg/loomabase.git","description":"Offline-first synchronization engine for SQLite and PostgreSQL, built in Rust with column-level CRDTs, authoritative partial replicas, and secure multi- tenancy.","language":"Rust","stars":71,"topics":["baas","crdt","database","distributed-systems","embedded-database","eventual-consistency","lamport-clock","local-first","multi-tenant","offline-first"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"Loomabase Loomabase is an open-source offline-first sync engine for applications that use SQLite on clients and PostgreSQL on the server. It resolves conflicts at column level with deterministic LWW CRDT registers and Lamport clocks, so unrelated offline edits do not overwrite each other. Status: alpha. The Rust merge engine, SQLite client, PostgreSQL adapter, security boundaries, partial replicas, and JavaScript SDK smoke tests are implemented and tested. The public API and wire protocol are still pre-1.0. Demo The demo shows two devices editing the same todo while offline. After reconnect, Loomabase keeps both changes because title and completed are separate CRDT cells. Try It In 2 Minutes Clone the repo: Run the automated phone + desktop offline reconnect smoke test: Expected result: Run the interactive browser demo: Open: The server also prints a LAN URL that you can open on a phone. Why Loomabase Exists Many sync systems resolve conflicts at row or document level. That means two offline edits to different fields can still fight with each other. Loomabase stores CRDT metadata per synchronized column: An incoming cell wins when: This makes the merge deterministic, idempotent, and explainable. What Is Implemented Core engine: - Rust CRDT protocol types with Serde serialization. - SQLite client using rusqlite and explicit transactions. - SQLite triggers that capture local changes and Lamport clocks. - PostgreSQL server adapter using sqlx transactions. - Column-level LWW merg","default_branch":null,"files":null,"tree":[],"storefront":"/r/JustVugg","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/JustVugg/loomabase/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}