Vue CLI builds are static files — put them on a URL
vue-cli-service build emits a complete static bundle in dist/. For apps still on Vue CLI, deploying that folder is a single POST — no platform integration.
Drop your Vue CLI report here — get a live link
.zip, folder, or single .html — free, no account, live for 7 days.
The artifact dead-end
Vue CLI is in maintenance mode, but its output hasn't changed: dist/ is plain static files. Sharing a build shouldn't require migrating the toolchain first.
The classic loop — build locally, scp to a box, or ask someone to pull — is a lot of ceremony for a folder of static assets.
Two lines to a live link
Build your output like you already do, then hand the folder to the action:
Build the app
npm run build.github/workflows/ci.yml
- uses: bitgate/ship-page-action@v1
if: always()
with:
path: dist/Or with plain curl — no account needed
cd dist && zip -qr - . | curl -fsS -X POST https://ship.page/deploy \
-H "Content-Type: application/zip" \
--data-binary @- | jq -r .urlpath: dist/ 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
- dist/ deploys exactly as built — the default publicPath of / resolves at the drop's subdomain root
- Works from any machine with curl: zip the folder, POST it, share the link
- Moving to Vite? Same recipe, same dist/ — see the Vite page
Questions
Do I need to change publicPath?
No — the default / works because drops mount at the root of their own subdomain. A custom publicPath like /app/ would have to match a path under the drop URL, so leave it default for previews.
Vue CLI or Vite?
Vue CLI is maintenance-mode; create-vue (Vite-based) is the current default. Both emit dist/, so the deploy step is identical either way.
Does history-mode routing work?
The entry page works everywhere. Drops serve files as-is with no rewrite rules, so deep links into history mode behave like on any plain static host — hash mode works fully.
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.