Relayer logoRelayer

Adapters

Native Tauri and Electron support, and the ten-line client for everything else.

Tauri - zero code

The /u endpoint is Tauri's dynamic-updater contract. Point the updater at Relayer and you're done:

{
  "plugins": {
    "updater": {
      "endpoints": [
        "https://relayer-three.vercel.app/u/YOUR_APP_REF/stable/{{target}}/{{arch}}/{{current_version}}"
      ],
      "pubkey": "YOUR_TAURI_PUBLIC_KEY"
    }
  }
}

Tauri substitutes {{target}}, {{arch}} and {{current_version}} itself. Publish releases with signature in the artifact (your minisign .sig content) and Tauri verifies them as usual. Staged rollouts, channel policies and fleet visibility all work out of the box - Tauri sends no device header, so generate a UUID and add it via the updater's header option if you want per-device bucketing.

Electron - a feed URL

Relayer serves the electron-builder generic provider feed (latest.yml, latest-mac.yml, latest-linux.yml):

# electron-builder.yml
publish:
  provider: generic
  url: https://relayer-three.vercel.app/e/YOUR_APP_REF/stable

electron-updater compares versions locally and downloads from the artifact URLs in the feed. To join staged rollouts and the fleet dashboard, identify the device:

autoUpdater.requestHeaders = {
  "X-Relayer-Device": deviceId,   // uuid you generate & persist
  "X-Relayer-Version": app.getVersion(),
};

Without the header the feed still works - anonymous devices simply only see fully-rolled-out releases.

Everything else - one GET

Wails, Swift, Go agents, Python daemons, .NET services: implement the device-update contract directly. It's one HTTP GET on a schedule and a JSON manifest; the reference loop is ~10 lines.

Release notes feed

For "What's new" screens and public changelogs - no auth, CORS-open, cached 60s:

curl https://relayer-three.vercel.app/feed/YOUR_APP_REF/stable

Returns published releases (newest first) with version, markdown notes, date and artifacts.

The same feed is available as RSS, so your users can subscribe to your changelog from any feed reader or a Slack RSS integration:

curl https://relayer-three.vercel.app/feed/YOUR_APP_REF/stable/rss.xml

On this page