Experimental Features
Some Turso features are still experimental and must be explicitly enabled before use. Experimental features are stable enough for testing but their API may change in future releases.Experimental Features List
| Feature | Flag | Description |
|---|---|---|
| Views | views | CREATE VIEW and CREATE MATERIALIZED VIEW |
| Custom Types | custom_types | CREATE TYPE and DROP TYPE for STRICT tables |
| Triggers | triggers | CREATE TRIGGER and DROP TRIGGER |
| Encryption | encryption | At-rest encryption via PRAGMA cipher / hexkey |
| Index Methods | index_method | CREATE INDEX … USING for FTS and custom index types |
| Autovacuum | autovacuum | Automatic database file compaction |
| Attach | attach | ATTACH DATABASE and DETACH DATABASE |
CLI
Pass--experimental-<feature> flags when starting tursodb:
Rust SDK
The Rust binding uses a fluentBuilder API:
Python SDK
Pass a comma-separated string to theexperimental_features parameter:
JavaScript / Node.js SDK
Pass an array of feature strings to theexperimental option:
Go SDK
Set theExperimentalFeatures field as a comma-separated string:
Java SDK
The Java binding currently supports encryption through a dedicated method:.NET SDK
The .NET binding currently supports encryption through the C FFI:See Also
- Compatibility for the full feature support matrix