Nodus
Reference

Configuration

Web, mobile, and Storage Node configuration.

For the Relay and deployment unit, see Self-hosting → Configuration.

Web client (apps/web/.env.local)

VariableScopePurpose
RELAY_URLserverInternal Relay base URL for route handlers (default http://localhost:8080)
PUBLIC_RELAY_URLserverPublic origin shown in the pairing command; required for “+ Add Storage Node”
NEXT_PUBLIC_RELAY_URLbrowserRelay WS origin; leave unset in single-origin deploys
NEXT_PUBLIC_VAPID_PUBLIC_KEYbrowserVAPID public key for browser push; must match the Relay
NEXT_PUBLIC_SHARD_SIZE_BYTESbrowser (build)Build-time default shard size (clamped)

Mobile client

The Relay URL is entered at runtime on first launch and stored in the device keychain, so it is not an environment variable. It can be changed under Settings → Server; changing it signs the device out. Remote URLs must use https://; cleartext is allowed only for loopback and the Android emulator alias 10.0.2.2.

The mobile .env only carries optional build-time values:

VariablePurpose
EXPO_PUBLIC_EAS_PROJECT_IDEAS project id for Expo push tokens; unset disables push

Storage Node

Environment variables:

VariablePurpose
NODUS_DATA_DIRData directory (tilde-expanded)
NODUS_RELAY_URLRelay endpoint fallback
NODUS_PAIRING_CODEPairing code for automation

Files:

PathContents
~/.nodus/config.tomldata_dir, and relay_url after a successful pairing
~/.nodus/identity/node_private_keyRaw 32-byte Ed25519 seed (mode 0600)
~/.nodus/identity/node_idHex-encoded Ed25519 public key (the stable node_id)
~/.nodus/migration.jsonJournal for an interrupted data-dir move
<data-dir>/nodus.dbSQLite catalogue (WAL)
<data-dir>/objects/Content-addressed encrypted shards
<data-dir>/temp/In-progress atomic writes

On this page