Docs · Frameworks

Deploy a static site.

Plain HTML, CSS, and JavaScript — no build step, no package.json. If there’s an index.html at the root, Canner serves it. The fastest possible path from folder to URL.

How it works

When a project has an index.html at its root and no package.json, Canner skips the build entirely and serves the files directly, with HTTPS, compression, and an SPA-style fallback (unknown paths serve index.html). This works from a drag-and-drop upload, the CLI, or a GitHub repo.

Perfect for AI-generated single pages. A page built by ChatGPT, Claude, or Gemini — one HTML file, maybe a CSS file — deploys in seconds. Drop the folder on the homepage dropzone and it’s live.

From GitHub

A repo that’s just static files deploys the same way — and Canner strips the .git directory from what’s served, so your repo history is never exposed. Pushes to the branch redeploy automatically.

With a build step instead?

If your static site is generated — Astro, Eleventy, Gatsby, Hugo output committed to a repo, or a Vite project — see the Vite and Astro guides; Canner runs the build for you rather than serving the source.

Good to know

  • Static sites are light enough that free-plan sleep barely matters — they wake instantly.
  • Custom domains work the same as for any project.
  • Upload caps are per plan and generous — plenty for any static site (see the limits).