Skip to content

Point the desktop app at your backend

The desktop recorder talks to the web backend through four build-time env vars. They're inlined into the Electron bundle by electron.vite.config.ts, so you set them before building the app.

Defaults

All four default to https://captureflow.xyz (the unified Worker). If you self-host on that domain, you don't need to set anything.

Env varDefault (prod)
CAPTUREFLOW_APP_WEB_API_BASEhttps://captureflow.xyz
CAPTUREFLOW_APP_WEB_BASEhttps://captureflow.xyz
CAPTUREFLOW_SHARE_API_BASEhttps://captureflow.xyz/api/r
CAPTUREFLOW_SNAP_API_BASEhttps://captureflow.xyz/api/s

In local dev (pnpm --filter @captureflow/desktop dev) these default to http://localhost:3032, so the recorder talks to a locally running Worker.

Target your own host

Set the four vars to your domain, then build. For a deployment at https://rec.example.com:

bash
export CAPTUREFLOW_APP_WEB_API_BASE="https://rec.example.com"
export CAPTUREFLOW_APP_WEB_BASE="https://rec.example.com"
export CAPTUREFLOW_SHARE_API_BASE="https://rec.example.com/api/r"
export CAPTUREFLOW_SNAP_API_BASE="https://rec.example.com/api/s"

pnpm --filter @captureflow/desktop build

(Or put them in a desktop .env file that electron-vite reads at build time.)

Deep linking

Sign-in completes in the browser and returns to the app via the captureflow:// URL scheme. The backend's APP_DEEP_LINK_SCHEME var must match the scheme the desktop app registers (captureflow). If you rebrand the scheme, change it in both places in lockstep.

Desktop-only build extras

These don't affect the web backend but tune the desktop build:

  • POSTHOG_KEY / POSTHOG_HOST — opt-in analytics, dormant when unset.

See apps/desktop/electron.vite.config.ts for the full list.

Released under the AGPL-3.0-only license.