24,695 stars · MIT · v0.8.2 (6 Oct 2026) · Track this in Scout
A rewrite of SQLite in Rust that reads the same files and has not yet reached version 1.0.
▶Repo detailsthe review · specs · pros & cons · install
What it is
Turso is an in-process SQL database written in Rust and compatible with SQLite's file format, with an experimental interface that speaks the PostgreSQL protocol as well. The repository was renamed this year from tursodatabase/limbo, and the old address still answers.
What it is good for. Anyone following where small embedded databases are going, and anyone who needs something SQLite does not offer: encryption of the file at rest, or writes from several processes. It is not the choice for data that must not be lost, and the project's own advice says as much.
- MIT, plain and unmodified, with a dependency policy file that refuses every GPL variant, so the whole tree stays permissive.
- The SQLite file format is fully supported, so existing database files open without conversion.
- It moves fast. A stable release lands roughly weekly, and the Rust, JavaScript, Python and Go bindings all ship together.
- Pre-1.0, and its own FAQ says "we have not yet reached 1.0." alongside "we recommend the same discipline you would apply to any database: keep independent backups." Encryption at rest, the PostgreSQL interface, incremental computation and multi-process writing are each marked experimental.
- Three documented ways to lose access to data. Rows written in its multi-version mode are invisible after reopening without that mode unless they were written out first. "The key is not stored anywhere", so a lost encryption key leaves the file unreadable. Changing a page codec can make an existing file unreadable.
- SQLite compatibility is partial and some gaps fail quietly rather than loudly. An unknown collation name silently falls back to the default instead of raising an error,
WITH RECURSIVEis unsupported, and several window functions are missing. The version recorded on the default branch is behind the released one.
- tursodatabase/libsql
The same owner's earlier answer, a C fork of SQLite rather than a rewrite; this project is its stated replacement.
Track this in Scout
duckdb/duckdbAlso an in-process database with no server, but column-oriented and aimed at analysis, with a file format of its own.
Track this in Scout- rqlite/rqlite
Builds on SQLite in the opposite direction: a replicated network server in Go, for staying available rather than embedded.
Track this in Scout
curl --proto '=https' --tlsv1.2 -LsSf \ https://github.com/tursodatabase/turso/releases/latest/download/turso_cli-installer.sh | sh tursodb mydb.db


