nuxi generate, one POST — your Nuxt site on a URL
nuxi generate prerenders every route and writes a pure static site to .output/public/. No Nitro server, no edge functions — just files. Ship the folder, get a link.
Drop your Nuxt report here — get a live link
.zip, folder, or single .html — free, no account, live for 7 days.
The artifact dead-end
Nuxt's deploy docs lead with server platforms because the framework can do SSR — but a fully prerendered site needs none of that. .output/public/ is plain files.
Wiring a repo to a hosting platform to preview one content branch is overhead that outlives the branch.
Two lines to a live link
Build your output like you already do, then hand the folder to the action:
Generate the static site
npx nuxi generate.github/workflows/ci.yml
- uses: bitgate/ship-page-action@v1
if: always()
with:
path: .output/public/Or with plain curl — no account needed
cd .output/public && zip -qr - . | curl -fsS -X POST https://ship.page/deploy \
-H "Content-Type: application/zip" \
--data-binary @- | jq -r .urlpath: .output/public/ deploys exactly what the tool wrote — no detection to configure. The link goes in the job summary — add comment: true and it lands on the pull request too.
What you get
- .output/public/ deploys untouched — prerendered HTML, _nuxt assets and payload files resolve at the drop root
- One curl for local shares; path: .output/public/ in CI, with comment: true for the PR link
- Named drops give main a permanent URL that redeploys in place on every merge
Questions
nuxi generate or nuxi build?
generate prerenders every route to static HTML. build with prerendered routes also lands in .output/public/ — either way, that folder is what you deploy.
Does payload fetching work?
Yes — useAsyncData payloads are baked into .output/public/ as _payload.json files at generate time and served like any other file.
What about hybrid or server routes?
Routes that aren't prerendered need a server runtime. This recipe covers fully static sites — the ones where .output/public/ is the whole story.
Try it on your next run
Anonymous deploys need no account and no key — paste the step, get a link. When you want stable URLs that redeploy in place, an API key and a name are all it takes.
Need to share the report with someone outside GitHub? How to share a GitHub Actions artifact without a login.