Docs / Lux / Quickstart
Voxell Lux · Quickstart

Your Lux subscription is active

Activation handed you two values — a signed broker license token and an SDK key. This page takes those to a live broker in three steps. Lux is self-hosted: the broker runs in your cloud account, and Voxell is never on the sync hot path.

SDK / API key — fw live … Becomes LUX_API_KEY on the broker and the apiKey your SDK sends.
Broker license token (signed JWT) Becomes LUX_LICENSE. Verified locally by your broker — never phones home.
AWS account number The account the broker container runs in. Nothing to do here; it's your deploy target.

Go live in three steps

These mirror the “Next steps” on your activation page, with the exact commands.

1

Pull and run the Lux broker in your AWS account

The broker is a single Go container — run it on ECS Fargate, Cloud Run, or any container host, backed by your own durable store. Your subscription entitles you to pull the image from the private Voxell registry: log in with your AWS account ID, using your LUX_LICENSE token as the password.

pull the broker image
docker login registry.voxell.ai -u <your-aws-account-id> -p "<LUX_LICENSE token>"
docker pull registry.voxell.ai/lux-sync-broker:latest

The license token is your pull credential — the registry verifies it offline, so it works the moment you activate. The broker listens on $PORT and serves the Lux API under /api/lux.

2

Set LUX_LICENSE and LUX_API_KEY

Paste both values exactly as they appear on your activation page. The broker reads them from the environment:

broker env
LUX_LICENSE="eyJhbGciOiJSUzI1Ni…"   # the signed broker license token
LUX_API_KEY="fw live …"             # the SDK key, copied exactly
PORT=8080

Free tier runs without LUX_LICENSE; set it for production write throughput.

3

Point the Lux SDK at your broker

Install the SDK, then aim it at your broker's /api/lux endpoint with the same key:

shell
npm i @voxell/lux
app.js
// local-first read, live push on change
import { lux } from '@voxell/lux'

const store = lux('prefs', {
  endpoint: 'https://YOUR-broker.example.com/api/lux',
  apiKey: 'fw live …', realtime: true,
})

store.load((data, meta) => render(data))
store.save({ theme: 'dark' })

SDK source: github.com/VoxellInc/lux_sdk. Prefer no build step? Import by CDN: https://cdn.jsdelivr.net/gh/VoxellInc/lux_sdk/src/lux.js.