Use a SQL subset, vectors, graph APIs and JSON documents in one local .tapir file. Native page encryption is optional; measure latency on your workload.
This Rust example uses the implemented Connection API. Check the published crate version before installing; v1.0.2 release source and registry packages can differ.
use tapirus::{Connection, Result};
fn main() -> Result<()> {
let db = Connection::open("notes.tapir")?;
db.execute("CREATE TABLE IF NOT EXISTS notes (id INTEGER PRIMARY KEY, body TEXT NOT NULL)")?;
db.execute("INSERT INTO notes (id, body) VALUES (1, 'Check recovery')")?;
db.close()?;
let reopened = Connection::open("notes.tapir")?;
println!("{:?}", reopened.query("SELECT id, body FROM notes")?);
reopened.close()
}
Read the quickstart and SQL limits · Run the real Rust WASM workspace
Keep supported SQL, vector, graph and JSON operations in one local runtime instead of coordinating several network services. Confirm the exact API and workload limits before deployment.
Network serialization, sync drift, and compounding SaaS monthly bills.
One in-process runtime with WAL-backed commits and workload-dependent query latency.
.tapir File: Native page encryption can be enabled for protected storage.Use relational queries, vector similarity, relationship traversals and JSON documents in one in-process engine. Support and transaction behavior vary by API, so check the documented limits and test your workload.
Transactional SQL writes, B+Tree indexes, and supported multi-table joins.
HNSW-based vector search with optional SIMD support; measure recall and latency on your corpus.
CSR-backed relationship data and traversal helpers for application-specific graphs.
JSON collections with indexed lookups; measure latency on your documents and indexes.
Use the embedded engine when a local file and in-process API fit the application. Measure the target before choosing a deployment.
Episodic vector memory, knowledge graphs, and action logs inside a single self-contained file per session.
Local retrieval for data-sensitive applications. Encryption and external-service boundaries depend on the deployment you choose.
Local storage and graph APIs for ARM64 devices; validate peak memory and latency on the target hardware.
Semantic search and relational storage embedded directly into desktop and mobile client software; measure startup and recall on the target.
Earlier latency, RAM, binary-size and competitor speed figures were withdrawn after benchmark review. A corrected small-workload validation records source, host, durability, checked results, reopen and HNSW recall. It includes cases where TapirusDB writes were slower than SQLite.
Read benchmark scope and method · Inspect the dated validation record ↗
Embedded Rust and native Python/Node clients; Go and PHP connect to the optional HTTP daemon. Check each registry version and platform.
Interactive administration workbench for tables, vector spaces, and knowledge graphs.
A browser-side WebAssembly workspace for querying and inspecting data locally. It does not require an application server for this demo; export backups before clearing site data.
Standalone desktop application with hardware-accelerated rendering and background local database runner.
Run the Rust WASM workspace in Safari or Chrome, or download the Lite package for local offline use.
sh Start-Tapirus-Lite.sh with Python 3.Run in any Linux browser with client-side WebAssembly, or download the portable offline package.
sh Start-Tapirus-Lite.sh with Python 3.Launch the studio directly from your terminal or self-host in your private container infrastructure.