Hosting
One server, many deploys.
A self-hosted Worker and R2 bucket a whole team can share. Also runs locally on Miniflare.
One install, yours alone.
Lives in your own Cloudflare account, free or paid. Each website gets its own Worker and address.
One starts in your terminal, one in your chat. Both end at a public URL on Cloudflare.
Loading the routes
Publishes from your terminal.
Advantage: A bare .tsx goes live with one command.
Disadvantage: No version history. --id overwrites whatever was there.
Publishes from your chat.
Advantage: Come back weeks later, in any chat, and change it.
Disadvantage: No auto-wrap. A bare .tsx has to be built first.
One server, many deploys.
A self-hosted Worker and R2 bucket a whole team can share. Also runs locally on Miniflare.
One install, yours alone.
Lives in your own Cloudflare account, free or paid. Each website gets its own Worker and address.
CLI first.
A snippet in AGENTS.md lets any coding agent run getonup deploy. Also has a local stdio MCP server.
Chat first.
A remote MCP connector for ChatGPT, Claude and Codex, plus a web Cockpit. Claude Code can connect too.
Raw source is fine.
Bare .tsx, .vue or .js gets wrapped with React 18, Babel, Tailwind and esm.sh. HTML and built folders work too.
Finished files.
HTML, CSS, JS and images, or a ZIP, including built React or Vue output. Source files are served, never run.
Overwrite or start fresh.
--id overwrites a stable URL. Otherwise every deploy gets a new throwaway link.
A 20-version undo.
A persistent project, a safeguard against oversized rewrites, and protection when two chats edit one site.
pages.example.com
Paths on one shared host by default. Per-deploy subdomains are optional.
pants-math.you
A separate origin for every site. Your own domain takes a manual step in Cloudflare.
Developer setup.
Clone, create an R2 bucket, set a token, npm run deploy, getonup login. Public instances need a WAF rate limit.
Guided install.
A browser installer, one Cloudflare API token in your Publisher, then your MCP URL in your AI client.
20 MiB, 300 files.
Per deploy, and both are defaults you can change in your server config.
20 sites, 25 MB each.
Files up to 10 MB each. Sites share your Cloudflare account's allowance.
A CLI and an agent snippet get the file out.
Getting an AI-built page out of the chat window and onto a public URL, without GitHub or a traditional hosting setup.
A chat connector gets the file out.
One Worker plus an R2 bucket.
Both use Cloudflare Workers as the engine behind every published page.
Workers, KV and a SQLite Durable Object.
AGENTS.md, a Claude Code skill, stdio MCP.
In both cases the agent publishes its own work. You never upload anything by hand.
Remote MCP with OAuth sign-in.
Wrapped pages load their dependencies from CDNs.
Neither runs server-side code or gives you a database.
Server code is planned. No database support.
Each ends in a lightweight public address, on workers.dev or your own domain, showing what your AI wrote.
Read the licenses: getonup and Jumper Publisher.
No CI/CD, no Git repository to set up and no separate build server, at least for simple pages and snippets.
Start in the scratchpad, then promote what you keep.
You work in a terminal or IDE, or run agents from scripts.
An agent writes a bare Dashboard.tsx and getonup returns a preview URL with no project setup. A throwaway CodePen for AI output: links are public, and getonup serve stays on your machine.
You talk to chat agents, or want sites to persist in your own account.
Publisher keeps revisions in a SQLite Durable Object. Weeks later, a new chat can “change the button to green”, and you can roll back if the agent breaks something.
getonup while an agent tries UI ideas. Publisher once the finished bundle needs a home, revisions and edits from chat.
Terminal agents call getonup from AGENTS.md. Web and mobile chat agents reach Publisher through an OAuth MCP connector.
npm i -g getonup, then getonup login to a server you run.
A guided installer in your browser, then add your MCP URL to your AI client.
Install Jumper Publisher Source on GitHubChecked against both projects' READMEs and docs on 5 November 2026.