---
title: "Installation"
---

# Installation

## Getting HeliosDB-Lite

HeliosDB-Lite is source-available under SSPL-1.0 and is **available to licensed
customers** — contact [sales@heliosdb.com](mailto:sales@heliosdb.com) for
access. It is not published on crates.io, PyPI, npm, Docker Hub or Homebrew,
and its source repository is private.

Licensed customers receive the HeliosDB-Lite source distribution. The
instructions below assume it is unpacked in a directory named `heliosdb-lite`.

## CLI / Server Binary

Build the `heliosdb-lite` binary (REPL and PostgreSQL-compatible server) in
the unpacked source distribution:

```bash
cd heliosdb-lite

# Build release
cargo build --release
./target/release/heliosdb-lite --help

# Optional: put the binary on your PATH
export PATH="$PWD/target/release:$PATH"
```

## Docker Image

No public image is published. Build one from the source distribution:

```bash
cd heliosdb-lite
docker build -f deployment/docker/Dockerfile -t heliosdb-lite .

# The server refuses to start without a REST token-signing secret
export HELIOSDB_JWT_SECRET="$(openssl rand -hex 32)"
docker run -p 127.0.0.1:5432:5432 -e HELIOSDB_JWT_SECRET \
  -v heliosdb_data:/data heliosdb-lite
```

The image runs `heliosdb-lite start --data-dir /data --listen 0.0.0.0 --port 5432`
with the default `trust` authentication. Publish the port on loopback as above,
or pass your own `start` arguments with `--auth scram-sha-256 --password ...`
before you expose it:

```bash
docker run -p 5432:5432 -e HELIOSDB_JWT_SECRET -v heliosdb_data:/data heliosdb-lite \
  start --data-dir /data --listen 0.0.0.0 --port 5432 \
  --auth scram-sha-256 --password 'choose-a-strong-password'
```

## Client Access from Other Languages

HeliosDB-Lite speaks the PostgreSQL wire protocol, so Python, Node.js, Go,
Java and other applications can connect to a running Lite server with their
standard PostgreSQL driver (`psycopg`, `pg`, `pgx`, JDBC, ...).

The Apache-2.0 HeliosDB client SDKs (Python, TypeScript, Rust, Go) are
developed in the public
[HeliosDatabase/HeliosDB-SDKs](https://github.com/HeliosDatabase/HeliosDB-SDKs)
repository and are installed from source — see
[SDKs & Integrations](https://www.heliosdb.com/docs/lite/api/sdks/).

## Platform Support

| Platform | Architecture | Result |
|----------|--------------|--------|
| Linux | x86_64, aarch64 | Fully supported |
| macOS | x86_64, Apple Silicon | Fully supported |
| Windows | x86_64 | Fully supported |
| FreeBSD | x86_64 | Best effort (not officially supported) |

## Verifying Installation

```bash
# Confirm the binary runs and list its subcommands
heliosdb-lite --help

# Run a quick test in an in-memory REPL
heliosdb-lite repl --memory
> SELECT 1 + 1;
> \version
```

The CLI has no `--version` flag. Use the REPL meta-command `\version`, or, with a server
running, `curl http://localhost:8080/version` (HTTP API port, default 8080). Both report
the build version.

## Next Steps

- [Quick Start Guide](https://www.heliosdb.com/docs/lite/getting-started/quickstart/) - Create your first database
- [Deployment Modes](https://www.heliosdb.com/docs/lite/getting-started/deployment/) - Choose how to deploy
- Questions about licensing or access: [sales@heliosdb.com](mailto:sales@heliosdb.com)
