Publishing to a free subdomain needs nothing. Deploying to your server needs a one-time setup — a deploy target — and then it's a button on every build. This chapter is that setup.
Creating a target
In Settings → Deploy, a target is: a name, your server's host and port, SFTP credentials (password or key), and the webroot path. Targets then attach to domains — one target can serve several domains, each optionally overriding the webroot. The attachment lives in Domain Management, so "deploy this build to thatdomain.com" resolves the right server automatically.
What actually happens on deploy
- The deploy agent inspects the server first — read-only — and picks a strategy that fits what's already there.
- Before anything is overwritten, the existing webroot is captured as a version on your host.
- The built files upload over SFTP (the compiled output for framework builds — never source trees).
- The live URL is checked afterward; the result and any question the agent has surface in the build's chat.
Version history and the undo
Every deploy adds a version on the host; the pre-platform state is version one. Revert is one click and restores the previous live version — the full philosophy is in Iterating without fear. History and restore live on the build card and in the target's history view.
