Docs

ReleaseFlow serves downloads, update feeds and license checks for desktop apps from your GitHub releases. Every app gets public URLs under https://releaseflow.net/{username}/{slug}; license endpoints live under https://releaseflow.net/api/{username}/{slug}/license.

  • Authentication: Create an API key, send it as x-api-key to the REST API, and connect the MCP server to Claude Code, connectors or Cursor over OAuth.
  • Quickstart: Connect GitHub, tag a release and get your download, update feed and release URLs from ReleaseFlow.
  • Sparkle (macOS): Point Sparkle's SUFeedURL at the ReleaseFlow appcast, sign updates with EdDSA and map versions to CFBundleVersion.
  • Electron: Use electron-updater's generic provider or Electron's built-in autoUpdater with the ReleaseFlow update route.
  • License keys: Activate, validate and deactivate license keys, enforce device limits, and use the ReleaseFlowLicensing Swift package or plain HTTP.
  • Channels: How stable, beta and alpha channels are assigned from tags, enabled per app, requested by feeds and resolved with fallback.
  • From S3 feed: Move a Sparkle feed from S3 or another bucket to ReleaseFlow: keep the old URL alive, match versions, verify EdDSA signatures and roll out.
  • From Hazel / Nuts: Move Electron updates from Hazel, Nuts or update.electronjs.org to ReleaseFlow, with a URL map, verification and rollout steps.
  • API reference: REST endpoints for apps, releases, license keys and integrations, authenticated with an API key from Settings → API Keys.

Setup notes and troubleshooting for feeds that return nothing are on /help.