Cross-Edition

Every SDK and integration in this catalogue is fully supported by all three HeliosDB editions. The wire surface (PostgreSQL / MySQL protocols + REST API) is identical across editions, so the same client code works whether you point it at an embedded Nano binary, a self-hosted Lite cluster, or a distributed Full deployment.

Five languages

First-class clients with type-safety, async, connection pooling, and a fluent query builder. Same surface across REST and wire-protocol modes.

Python Preview

Client with connection pooling and a query builder for REST and wire-protocol modes. Not published to PyPI — source only.

# no release yet - build from source
git clone https://github.com/HeliosDatabase/HeliosDB-SDKs
GitHub →

Python · SQLite-compat Preview

A PEP 249 adapter shaped like the standard sqlite3 module, driving Nano underneath. Not published to PyPI — source only, and the supported subset is narrower than sqlite3. Read the scope before porting a codebase onto it.

# no release yet - build from source
git clone https://github.com/HeliosDatabase/HeliosDB-SDKs
GitHub → What works today →

TypeScript / JavaScript Preview

Typed client for Node.js, Deno, and Bun. Not published to npm — source only.

# no release yet - build from source
git clone https://github.com/HeliosDatabase/HeliosDB-SDKs
GitHub →

Rust Preview

HTTP client for remote HeliosDB servers, planned. For embedded use today, depend on the real, published heliosdb-nano crate directly — see the Nano quickstart.

# no release yet - build from source
git clone https://github.com/HeliosDatabase/HeliosDB-SDKs
GitHub →

Go Preview

Idiomatic Go client with branches, vector search, agent memory, and time-travel. No tagged release — source only.

# no release yet - build from source
git clone https://github.com/HeliosDatabase/HeliosDB-SDKs
GitHub →

The SQLite-compat adapter, in scope

It is not a drop-in replacement for sqlite3, and it is not on PyPI. Here is what it does today, so you can decide whether it fits before you port anything onto it.

Tested and working

  • Connections and cursors, execute / executemany / executescript, fetchone / fetchmany / fetchall, and row objects with index- and name-based access.
  • Autocommit (isolation_level=None) alongside explicit commit / rollback.
  • Context-manager use: commit on clean exit, rollback when the block raises.
  • ?, :name and @name placeholder styles.

Known gaps

  • Placeholders are substituted into the SQL text on the client before the statement is sent. That is not server-side parameter binding — do not route untrusted input through it.
  • create_function, create_aggregate, create_collation and load_extension raise NotSupportedError. User-defined functions, custom collations and extensions do not carry over.
  • The PEP 249 exception hierarchy is exported, but constraint violations surface as DatabaseError, not IntegrityError. Code that catches IntegrityError around inserts will not catch them here.
  • It drives a heliosdb-nano REPL subprocess and parses its output. It is not an in-process binding, and it inherits that subprocess's lifetime and per-statement latency.
Which tree to build

Two directories in the SDKs repo carry the heliosdb_sqlite package name. sdks/python/heliosdb_sqlite is the implemented one and the only one to build against. sdks/python-sqlite is an unimplemented scaffold whose packaging metadata overstates its state — ignore it. Neither is published.

Embedded Python that works today

If what you want is Nano inside a Python process rather than a sqlite3-shaped API, use the embedded binding. It is published, and it ships in lockstep with the engine release.

pip install heliosdb-nano-embedded

The import name is heliosdb_nano. This is a different thing from the adapter above — a direct embedded binding, not a DB-API shim over a subprocess. Starting fresh, start here.

heliosdb on the command line

Not published to npm — the name heliosdb is already taken by an unrelated package there, so this ships under a different name once released. Source only for now. For the engine itself today, use the real, published heliosdb-nano CLI — see the Nano quickstart.

# no release yet - build from source
git clone https://github.com/HeliosDatabase/HeliosDB-SDKs
# then, once built:
heliosdb start              # persistent server
heliosdb start --memory     # in-memory dev mode
heliosdb repl               # interactive SQL
CLI source →

Six platforms

Drop HeliosDB into the tools your team already uses.

VS Code

SQL editor with intellisense, branch explorer, vector search panel, and natural-language query helper.

GitHub →

n8n

Community node with query, vector, branch, and agent operations. Drop into any n8n workflow.

GitHub →

Zapier

Triggers and actions for workflow automation. Connect HeliosDB to 5 000+ Zapier-supported apps.

GitHub →

Make (Integromat)

Module definition for Make.com. Build no-code automations with HeliosDB as a data source / sink.

GitHub →

Retool

REST API datasource configuration for building internal tools. Query HeliosDB from any Retool app.

GitHub →

Microsoft AutoGen

Multi-agent framework integration. HeliosDB as agent memory, retriever, and shared knowledge base.

GitHub →

Two minutes to first query

Python

from heliosdb import Client

db = Client("http://localhost:8080")
db.execute("CREATE TABLE docs (id SERIAL, body TEXT, embedding VECTOR(768))")
db.execute("INSERT INTO docs (body, embedding) VALUES ($1, $2)",
           ["Intro to HeliosDB", [0.1, 0.2, 0.3, ...]])

results = db.query(
    "SELECT body FROM docs ORDER BY embedding <=> $1 LIMIT 5",
    [query_vec],
)

TypeScript

import { Client } from "@heliosdb/client";

const db = new Client({ url: "http://localhost:8080" });
await db.execute(\`CREATE TABLE docs (
    id SERIAL, body TEXT, embedding VECTOR(768)
)\`);

const results = await db
  .from("docs")
  .select("body")
  .vectorSearch("embedding", queryVec, { limit: 5 })
  .run();

Pick a language, ship in minutes

Every SDK is Apache 2.0 and works against all three HeliosDB editions.