Skip to content

potluckdb

Local-first SQLite, synchronized through the object storage you already have. One writable database per device, explicit or automatic bidirectional sync, conflicts as data rather than exceptions, and the same behavior through every language SDK.

import potluckdb
remote = potluckdb.Remote.from_directory("shared-remote")
db = potluckdb.open("app.potluckdb", remote)
db.execute("CREATE TABLE IF NOT EXISTS note(id INTEGER PRIMARY KEY, body TEXT)")
db.execute("INSERT INTO note(body) VALUES(?)", ("hello",))
db.close()
remote.close()

This reference is generated from the code’s public surface on every change, and every example runs in the test suite — neither can go stale. Start with Open and construct, or jump to the runnable examples.