Skip to main content

Which package should I use?

Use caseTypeScriptPythonGoRust
Local database (embedded, on-device, offline)@tursodatabase/databasepytursotursogoturso
Local database + cloud sync (push/pull)@tursodatabase/syncpyturso (with sync)tursogo (with sync)turso (with sync feature)
Remote access (servers, Docker, serverless, edge — any over-the-wire)@tursodatabase/serverlesslibsqllibsql-client-golibsql (with remote feature)
Legacy (libSQL) — ORM support (Drizzle, Prisma), battle-tested@libsql/clientlibsqlgo-libsqllibsql
Starting a new project? Use @tursodatabase/database (TypeScript), pyturso (Python), tursogo (Go), or turso (Rust). These are built on the Turso Database engine — the ground-up rewrite of SQLite with concurrent writes, async I/O, and true local-first sync. Need sync? Use Turso Sync for local reads and writes with explicit push() / pull() to Turso Cloud. Using an ORM (Drizzle, Prisma)? Use @libsql/client — it has production-ready support from all major ORMs in the ecosystem. Migrating from SQLite? Turso Database is a drop-in replacement. Your existing SQL, schema, and queries work unchanged. Already using @libsql/client, libsql, or go-libsql? These packages are built on libSQL, our open-source fork of SQLite that predated the Turso Database engine. They are fully supported and battle-tested. Consider migrating to the Turso Database packages for better sync support and concurrent writes — but if you run into something that doesn’t work yet with the newer packages, the libSQL-based ones are reliable fallbacks.

Why multiple packages in TypeScript?

Keeping @tursodatabase/database and @tursodatabase/serverless separate means minimal bundle size. @tursodatabase/serverless uses only fetch — zero native dependencies, so it works in Node.js, Docker containers, serverless functions, edge runtimes, and browsers.
Need sync? If you want local reads and writes with push/pull sync to the cloud, use Turso Sync. The SDKs below connect to Turso Cloud using libSQL, where embedded replica sync only replicates reads locally — writes go to the cloud.

Official SDKs

TypeScript

Rust

Go

Python

Android

Swift

PHP

Ruby

Ruby on Rails

C

Community SDKs

These SDKs are community-driven and don’t come with official Turso support.

Flutter / Dart

Capacitor

React Native / OP-SQLite

Laravel

.NET

Java

Stateless libSQL

SQL over HTTP

SQL over HTTP