v3.6.0

HeliosDB Nano

Lightweight embedded database for AI applications, edge devices, and single-server deployments. Combine the zero-config simplicity of SQLite with the power and SQL compatibility of PostgreSQL — all in a single, compact binary written in Rust.

Nano is the foundation of the HeliosDB platform. Every feature in Nano is also available in Lite and Full, making it easy to start small and scale up as your needs grow.

~50 MB Binary
188K Lines of Rust
25 Use Cases
Rust
// Three lines to a working database
let db = HeliosDB::open("myapp.db")?;

db.execute("CREATE TABLE docs (
    id SERIAL PRIMARY KEY,
    content TEXT,
    embedding VECTOR(768)
)")?;

// Semantic search in one query
let results = db.query("
    SELECT content, embedding <=> $1 AS dist
    FROM docs ORDER BY dist LIMIT 10
", &[&query_vec])?;

Native Vector Search

HeliosDB Nano includes built-in vector search powered by HNSW indexing with Product Quantization compression. No extensions required — vector types and operators are first-class citizens in the SQL engine.

  • HNSW indexing with configurable M and ef_construction parameters
  • 384x compression via Product Quantization (PQ)
  • 1K-5K queries/sec on standard hardware
  • Cosine similarity, L2 distance, and inner product metrics
  • Works with any embedding model (OpenAI, Cohere, HuggingFace)
SQL
-- Create a table with vector column
CREATE TABLE documents (
    id SERIAL PRIMARY KEY,
    title TEXT,
    content TEXT,
    embedding VECTOR(768)
);

-- Create HNSW index with PQ compression
CREATE INDEX idx_docs_embedding
ON documents USING hnsw (embedding vector_cosine_ops)
WITH (m = 16, ef_construction = 200);

-- Semantic similarity search
SELECT title, content,
       embedding <=> $query_vec AS distance
FROM documents
ORDER BY distance
LIMIT 10;

Database Branching

HeliosDB is the only SQL database with Git-like branching at the storage layer. Create zero-cost copy-on-write branches for schema testing, A/B experiments, and safe migrations — without duplicating data.

  • Zero-cost copy-on-write branch creation
  • CREATE BRANCH, SWITCH BRANCH, MERGE BRANCH SQL syntax
  • Branch from any point in time
  • Schema testing without affecting production
  • A/B experiment isolation
SQL
-- Create a branch for schema testing
CREATE BRANCH feature_auth
FROM main;

-- Switch to the new branch
SWITCH BRANCH feature_auth;

-- Make changes safely
ALTER TABLE users
ADD COLUMN role TEXT DEFAULT 'user';

-- Test the changes...
INSERT INTO users (name, role)
VALUES ('admin', 'superuser');

-- Merge back when satisfied
SWITCH BRANCH main;
MERGE BRANCH feature_auth
INTO main;

Time-Travel Queries

Query any point in your database's history using the AS OF syntax. Time-travel enables audit compliance, production debugging, and data recovery without restoring from backups.

  • AS OF TIMESTAMP syntax for point-in-time queries
  • AS OF VERSION for exact version access
  • Configurable retention periods (7 days default)
  • Audit trail and compliance reporting
  • Instant data recovery without backup restores
SQL
-- Query data as it existed yesterday
SELECT * FROM orders
AS OF TIMESTAMP '2026-02-05 14:30:00';

-- Compare current vs. historical data
SELECT
    current.balance,
    historical.balance AS prev_balance,
    current.balance - historical.balance AS delta
FROM accounts current
JOIN accounts AS OF VERSION 42 historical
    ON current.id = historical.id;

-- Recover accidentally deleted data
INSERT INTO users
SELECT * FROM users
AS OF TIMESTAMP '2026-02-05 09:00:00'
WHERE id = 1234;

Enterprise Security

HeliosDB Nano ships with enterprise-grade security features built in, not bolted on. From transparent data encryption to zero-knowledge encryption, your data is protected at every level.

  • Transparent Data Encryption (TDE) with AES-256-GCM
  • Zero-Knowledge Encryption (ZKE) with client-side keys
  • FIPS 140-3 compliance mode
  • Row-Level Security (RLS) for multi-tenancy
  • Tamper-proof audit logging with cryptographic checksums
SQL
-- Enable transparent data encryption
ALTER DATABASE myapp
SET encryption = 'AES-256-GCM';

-- Enable zero-knowledge encryption
ALTER TABLE sensitive_data
SET encryption_mode = 'ZKE';

-- Row-Level Security for multi-tenancy
CREATE POLICY tenant_isolation
ON orders
FOR ALL
USING (tenant_id = current_setting('app.tenant_id'));

-- Enable FIPS 140-3 compliance
ALTER SYSTEM SET
    fips_mode = 'on';

PostgreSQL Compatibility

HeliosDB Nano achieves 95%+ SQL compatibility with PostgreSQL, including full wire protocol support. Use your existing tools, ORMs, and workflows without changes.

  • 95%+ PostgreSQL SQL syntax compatibility
  • Full PostgreSQL wire protocol support
  • Works with psql, DBeaver, pgAdmin, DataGrip
  • ORM support: SQLAlchemy, Diesel, Prisma, SQLx, GORM
  • Oracle wire protocol compatibility
  • JSONB document type with GIN indexes
SQL
-- Standard PostgreSQL syntax works
CREATE TABLE products (
    id SERIAL PRIMARY KEY,
    name TEXT NOT NULL,
    metadata JSONB,
    created_at TIMESTAMPTZ DEFAULT now()
);

-- JSONB queries with GIN indexing
CREATE INDEX idx_meta
ON products USING gin (metadata);

SELECT name, metadata->>>'category'
FROM products
WHERE metadata @> '{"active": true}';

-- Window functions, CTEs, all work
WITH ranked AS (
    SELECT *,
        ROW_NUMBER() OVER (
            PARTITION BY category
            ORDER BY sales DESC
        ) AS rank
    FROM products
)
SELECT * FROM ranked
WHERE rank <= 5;

Flexible Deployment Modes

HeliosDB Nano supports four deployment modes to fit every use case. Start embedded in your application, switch to server mode for shared access, or use in-memory mode for blazing-fast testing.

  • Embedded: Link directly into your application, zero config
  • Server: Run as a standalone server with TCP connections
  • In-Memory: Full-speed ephemeral database for testing
  • Hybrid: In-memory with WAL persistence for crash recovery
Rust
use heliosdb::{HeliosDB, Config, Mode};

// Embedded mode - zero config
let db = HeliosDB::open("myapp.db")?;

// Server mode - shared access
let db = HeliosDB::builder()
    .mode(Mode::Server)
    .bind("0.0.0.0:5432")
    .max_connections(100)
    .build()?;

// In-memory mode - testing
let db = HeliosDB::builder()
    .mode(Mode::InMemory)
    .build()?;

// Hybrid mode - fast + durable
let db = HeliosDB::builder()
    .mode(Mode::Hybrid)
    .wal_path("./wal")
    .sync_interval_ms(100)
    .build()?;

Who is Nano For?

HeliosDB Nano is designed for developers who need a powerful, embedded database without the operational overhead of a full server deployment.

Desktop Applications

Embed a full-featured database directly in desktop apps with zero installation. Ship a single binary with built-in vector search and branching.

Mobile & IoT

Run on edge devices, IoT sensors, and mobile platforms. The 50 MB binary footprint fits where others can't, with offline-first capability.

AI Prototypes

Build RAG pipelines, semantic search, and AI agent memory with zero infrastructure. Native vector search means no extension juggling.

Single-Server Deployments

Run production workloads on a single server with MVCC, WAL, crash recovery, and enterprise encryption. No cluster overhead required.

Get Started with Nano

Download HeliosDB Nano and start building in minutes. Free and open source.