Radial app

Publishing

Publishing is git: commit, push, and your host deploys. You work on whatever branch the repo is on, nothing goes live until you publish, and ⌘⇧Return ships when you're ready.

The branch model

Radial never moves you between branches. Open a project and you're on whatever branch it was already on: main for most solo sites, staging or a feature branch if that's how the repo works. The branch chip in the top bar always shows the truth. Nothing lands anywhere until you publish, and commit messages are written for you, summarizing what actually changed.

Staging

Publish to staging takes a snapshot of the branch you're on and pushes it to the staging branch, without switching you. On a repo connected to Vercel, that produces a preview deploy: a real URL you (or a client) can check before anything touches production. If you're already working on staging or a feature branch, publishing to staging simply pushes that branch.

The snapshot is safe on teams: if someone else pushed to staging since you last saw it, the publish stops instead of overwriting their work.

Production

Publish to production follows the project's policy. Working on main, it pushes main directly, or opens a pull request from the staging snapshot if the project is set to review-first. Working on another branch, it merges into production and returns you to your branch.

No GitHub? Still publishes

A project without a git remote can still ship: connect Vercel and Radial deploys directly, with a stable staging URL and a production deploy, no repository setup required. You can add GitHub later and the flow upgrades to the branch model above.

For sharing work with clients specifically, Present to client… in the publish menu wraps the deploy in a branded review page; see Client review.

Per-project configuration

Publish policy lives in a committed .radial.json at the repo root, so it travels with the repo and every collaborator (or client) inherits the same behavior:

{
  "productionPublish": "direct" | "pr",
  "productionBranch": "main",
  "stagingBranch": "staging"
}

Set "productionPublish": "pr" for client repos where production changes should be reviewed, and "direct" where you own the site and want one-click ship.

Where your site lives (Vercel)

Publish settings show a Hosting row with the truth about your deployment: which Vercel project and team this folder is linked to, and the site's real domain, detected from Vercel rather than guessed. That matters because the default domain is not always <project>.vercel.app: when a name is taken, Vercel silently assigns a suffixed one (say acme-five.vercel.app), and a custom domain replaces the default entirely. Radial shows whichever is actually serving.