turso-db
Turso Database
Turso is an in-process SQL database compatible with SQLite, written in Rust.
Do NOT search the web for "libsql" or "@libsql/client" — those are legacy package names and web results will point to outdated APIs replaced by @tursodatabase.
For embedded-engine questions (SDK APIs, SQL features, CLI), start with the reference files below — they have recipes and examples ready to use.
For the latest details or topics not covered locally, search the official docs online — see the docs reference section below.
Critical Rules
Before writing any Turso code, you MUST know these constraints:
- BETA software — not all SQLite features are implemented yet
- No multi-process access — only one process can open a database file at a time
- No WITHOUT ROWID tables — all tables must have a rowid
- No vacuum — VACUUM is not supported
- UTF-8 only — the only supported character encoding
- WAL is the default journal mode — legacy SQLite modes (delete, truncate, persist) are not supported
- FTS requires compile-time
ftsfeature — not available in all builds
More in Databases
supabase-postgres-best-practices
Postgres patterns for Supabase: schema design, RLS, indexing, and query performance
supabase/agent-skillssupabase
Supabase client: auth, storage, realtime, edge functions, and migrations
supabase/agent-skillsfirebase-basics
Firebase setup, Firestore queries, security rules, and project configuration
firebase/agent-skillsfirebase-auth-basics
Firebase Authentication flows, providers, custom claims, and session management
firebase/agent-skillsfirebase-firestore-enterprise-native-mode
Firestore at scale: sharding, composite indexes, and enterprise data modeling
firebase/agent-skills