A real SQL dialect
JOINs, subqueries, CTEs, views, triggers, foreign keys — and a logical ALTER TABLE that never rewrites rows.
ἀρχεῖον — the house where the records of record live
An embedded, versioned, auditable engine in pure Rust — as if SQLite and Git had a child, born in Europe. And it learned to search.
v0.12 on crates.io · MIT or Apache-2.0 · single-file databases
-- the past is addressable
SELECT id, status, total
FROM invoices
AS OF VERSION 128;
-- and provable
db.verify()?; ✓ chain intactFour commits to an invoices table. Drag the version — every state is one query away.
SELECT * FROM invoices AS OF VERSION 4;| id | status | total |
|---|---|---|
| 1001 | issued | €120.00 |
v4 DELETE invoice 1002
Invoice 1002 is gone here — and perfectly readable one version back.
JOINs, subqueries, CTEs, views, triggers, foreign keys — and a logical ALTER TABLE that never rewrites rows.
Full-text BM25 and vector ANN in the same encrypted, versioned file. MATCH … AS OF searches the past.
Hash-chained commits, verify() with anchors, branches with three-way merge. History is a feature, not a log.
Designed, written and governed in Europe. Four runtime dependencies, not a line of unsafe code, no SQLite lineage — and the whole engine is open source.
A managed, verifiable database — you get a connection string, we never see your data. It already runs in production behind quota.at.