tursodatabase/turso

A SQL database in Rust: SQLite-compatible, now also speaking Postgres (experimental). The LLVM of databases.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 54 minutes ago
Added to GitGenius on December 13th, 2025
Created on August 26th, 2023
Open Issues & Pull Requests: 873 (+1)
Number of forks: 1,284
Total Stargazers: 23,980 (+0)
Total Subscribers: 99 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 33.2 hours
Mean response time: 21.2 days
90th percentile: 58.3 days
Tracked items: 2,282

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 44% of open issues come from outside the core team, a mix of external reports and the maintainers' own roadmap. Work labelled "automated" is answered fastest, typically in about 10 hours, while "enhancement" waits about 3 weeks. 47% of tracked open issues have had no activity in three months. Only 8% of issues opened in the past year have been closed.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 721
New in 7 days: 23
Closed in 7 days: 11
Avg open age: 108 days
Stale 30+ days: 486
Stale 90+ days: 356

Recent activity

Opened in 7 days: 22
Closed in 7 days: 11
Comments in 7 days: 36
Events in 7 days: 64

Top labels

  • bug (435)
  • correctness (283)
  • enhancement (260)
  • help wanted (205)
  • compatibility (197)
  • mvcc (193)
  • good first issue (178)
  • panic (128)

Detailed Description

Turso is an in-process SQL database written in Rust that maintains compatibility with SQLite across its SQL dialect, file formats, and C API. The project represents a complete rewrite of SQLite in Rust rather than a fork, positioning itself as the next evolution of SQLite with native support for modern database features. The software is currently in beta, with the developers noting that while it powers production applications including Turso Cloud, the Kin AI assistant, and Spice.ai, it has not yet reached SQLite-level reliability standards.

Core features include BEGIN CONCURRENT for improved write throughput using multi-version concurrency control, change data capture for real-time tracking of database modifications, and asynchronous I/O support on Linux via io_uring. The database supports vector operations including exact search and vector manipulation. Multi-language bindings are available for Go, JavaScript, Java, .NET, Python, Rust, and WebAssembly, enabling integration across diverse technology stacks. The project runs on Linux, macOS, Windows, and browsers through WebAssembly compilation.

Experimental features include encryption at rest for local data protection, incremental computation using DBSP for incremental view maintenance and query subscriptions, full-text search powered by the tantivy library, and multi-process WAL coordination via a .tshm sidecar file for cross-process write-ahead log readers and writers. The roadmap includes vector indexing for fast approximate vector search similar to libSQL vector search capabilities.

The repository includes a Model Context Protocol server mode that allows AI assistants to interact with databases through nine tools covering database operations from opening databases and listing tables to executing queries and modifying schemas. This integration supports Claude Code, Claude Desktop, and Cursor, enabling natural language database interaction.

The project is classified across multiple domains including SQLite compatibility, distributed database capabilities, edge computing, embedded database functionality, serverless operation, data replication, low latency performance, global scale deployment, managed service architecture, and data persistence. The codebase is available under the MIT license and distributed through multiple package managers including crates.io for Rust, npm for JavaScript, PyPI for Python, and Maven Central for Java, making it accessible to developers across different programming ecosystems.