Skip to content

Self-host quickstart

Run Nimbus as a server and talk to it over plain HTTP. No codegen, no schema files, no Node.js — curl is enough.

Terminal window
brew install nimbus/tap/nimbus

Other platforms ship via the install script and release binaries — see the install options.

Terminal window
nimbus start --port 8080 --data-dir ./data

The server binds to localhost by default and persists to ./data with the embedded SQLite backend.

The native API is protected by a local admin token, created on first boot and stored as a JSON file:

Terminal window
# Linux
export NIMBUS_TOKEN=$(jq -r .token ~/.local/share/nimbus/auth/token)
# macOS
export NIMBUS_TOKEN=$(jq -r .token "$HOME/Library/Application Support/nimbus/auth/token")

On Windows the file is %LOCALAPPDATA%\nimbus\auth\token.json. Requests without the token get a 401.

Terminal window
curl -s -X POST http://localhost:8080/api/tenants \
-H "Authorization: Bearer $NIMBUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"id": "demo"}'
Terminal window
curl -s -X POST http://localhost:8080/api/tenants/demo/documents \
-H "Authorization: Bearer $NIMBUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"table": "messages", "fields": {"text": "hello world", "author": "you"}}'
Terminal window
curl -s -X POST http://localhost:8080/api/tenants/demo/query \
-H "Authorization: Bearer $NIMBUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{"table": "messages", "filters": []}'

nimbus start runs the same engine as nimbus dev without codegen. The native HTTP/WebSocket API is the front door here; the MongoDB, DynamoDB, and Firestore-compatible surfaces have their own enablement stories — see the per-adapter guides under Developers.

  • Native API guide — tenants, documents, queries, and live subscriptions over WebSocket, from any language.
  • Operators — production deployment, tenants, storage backends (Postgres, MySQL, libSQL, redb), encryption at rest, networking, and observability.
  • Reference — every nimbus start flag and the native HTTP/WebSocket API.