Install Relay
Run the full stack on your hardware — Relay server, database, and workers. Inbox and other client apps connect over the network without running Relay on every device.
One-line install
Installs the @tiny-factories/relay-cli npm package, checks your Node.js version, and creates a default config:
curl -fsSL https://relay.tinyfactories.space/install.sh | bash
Requires Node.js 20+. The script gives OS-specific guidance if Node is missing, and never runs sudo for you. When it finishes, run relay onboard for guided first-run setup.
npm global CLI
Prefer to install manually? The one-liner is just a wrapper around npm:
npm install -g @tiny-factories/relay-cli@latest relay onboard # guided, OS-aware first-run setup relay init # create default config (~/.relay/config.json) relay start # run server + worker supervisor relay install # macOS login item (launchd) relay status # health check
relay onboard walks you through configuration interactively. See the home server guide for the full setup.
Homebrew
brew install relay — coming soon.
From source (development)
git clone https://github.com/your-org/relay cd relay npm install npm run build npm run relay:init npm run relay:install # macOS login item
Home server topology
The typical home-lab setup runs Relay always-on on a Mac mini (or similar): server and worker as background services, with Inbox on laptop and phone connecting over Tailscale.
Mac mini (launchd via relay install)
com.inbox.relay → relay start (supervisor)
├─ Relay server (:3000)
└─ worker (polls RELAY_URL)
Clients (any network)
Inbox PWA → RELAY_PUBLIC_URLSee the full guide: docs/home-server.md. Pair workers from the admin UI, set RELAY_PUBLIC_URL for remote clients, and use relay pair <code> for directed worker pairing.