Onboarding
Pick hosted vs self-hosted, choose your Relay, then use the app to get your machines ready.
Happier always follows the same high-level flow:
- Choose a Relay (Happier Cloud by default; self-hosting is optional).
- Sign in / create an account on that Relay.
- Use the desktop app as your control panel (recommended; the web UI is best for status/management).
- Get a machine ready:
- This computer: configure the local background service from the app.
- Remote machine: bootstrap it over SSH from the app.
- Optionally enable private access (for example Tailscale) for self-hosted/local Relay access from other devices.
Choose your setup
Option A — Hosted (recommended to start)
You use Happier Cloud as your Relay.
- Open the desktop app (recommended) or web app (status/management only).
- Choose Happier Cloud when the app asks you which Relay to use.
- Sign in.
- In the desktop app, open
/setupand choose Set up this computer.- This configures the local background service against the Relay you just selected.
- If the app detects Relay drift later, it shows a repair action instead of silently leaving the daemon on another Relay.
Optional CLI path:
# Node-free (recommended): install the CLI binary via the official installer
curl -fsSL https://happier.dev/install | bash
happier auth loginThe CLI login flow still works, but the app-first setup is the recommended control-panel flow.
Notes:
- The desktop app and the installer-installed CLI are self-contained; you do not need system Node/Yarn installed.
- If you prefer an npm workflow, see CLI install (requires Node).
Option B — Self-host Relay only (background service on your laptop)
You run your own Relay (remote machine, LAN box, or even your own computer), but keep the background service on another machine.
-
Install your Relay (examples):
- Proxmox: see Proxmox deployment.
- Any machine (managed service): install the CLI, then run
happier relay host install --mode system(or remote:happier relay host install --ssh user@host --mode system) - Docker: see Deployment → Docker.
-
Open the desktop app (recommended) or web UI (status/management only) and choose that Relay.
- Some installers print one-click links/QRs that prefill the Relay URL.
- Otherwise, open the app and add/select it in Relay settings.
-
Create an account / sign in on that Relay.
-
In the desktop app, decide which machine should run the background service:
- This computer: use
/setup→ Set up this computer. - Another machine: use Add machine over SSH from the Machines settings screen.
- This computer: use
If you need an advanced CLI fallback for the daemon host:
# Recommended remote-machine setup:
happier machine setup --ssh user@host --install-relay-runtimeTroubleshooting-only (manual daemon setup on the remote host):
happier server add --name company --server-url https://YOUR_SERVER_URL --webapp-url https://YOUR_WEBAPP_URL --use
happier auth login
happier daemon service install--use sets the default Relay profile for that CLI installation, but the app-first flow is preferred because it keeps Relay/account selection visible.
Option C — Devbox (server + daemon on the same machine)
You install both the Relay and the background service on one box.
- Install the stack (for example via
hstack setup-from-source --profile=selfhostor the Proxmox “devbox” option). - Open the desktop app (recommended) or web UI (status/management only) and choose that Relay (use the printed configure-server link/QR if available).
- Sign in / create an account.
- In the app, use
/setup→ Set up this computer if you are on that machine, or set up the box over SSH if you are operating it remotely. - If the Relay is local/self-hosted, optionally enable private access so phones and other devices can reach it without exposing it publicly.
Recommended for first setup:
- Use the same Relay on every device before linking more machines.
- Use the desktop app as the main control panel for daemon setup, Relay runtime control, and repair actions.
Multiple Relays (personal + company)
- The app and CLI support multiple saved Relay profiles.
- Credentials/state are scoped per Relay, so switching does not overwrite other accounts.
- Accounts are per Relay. Using the same login provider on two Relays still creates two independent server-side account contexts.
- Web: you can switch the Relay for this tab or make it the device default.
CLI: target a server per invocation
happier --server company auth login
happier --server company daemon startCLI: run multiple daemons on one machine (one per Relay)
happier --server personal daemon service install
happier --server company daemon service installThen verify (cross-platform):
happier daemon status --all
happier --server personal daemon service status
happier --server company daemon service statusFor complete profile/switching behavior and CLI reference, see Features → Multi-server.