Skip to content

Deploy a static site (Vite, React, Angular, plain HTML)

Static sites are the simplest and fastest thing to host: no running process, just files served by nginx. This covers Vite, Create-React-App, Angular, Vue (SPA), Svelte, and plain HTML/CSS/JS.

How detection works

  • Plain HTML (no build step) → OrbixPanel serves the repo as-is.
  • A build tool (has a build script but no start script) → OrbixPanel runs npm ci → npm run build and serves the output folder it detects (dist/, build/, etc.).

That “build but no start” rule is why Vite/React/Angular projects deploy as static automatically — exactly what you want.

Deploy

  1. Push your project to Git.
  2. Apps → Deploy from Git → repo + branch → Deploy.
  3. Add your domain and request SSL.

For a plain HTML site you can also just upload the files in the File Manager — no Git needed.

SPA routing (React Router, Vue Router)

Single-page apps handle routing in the browser, so a hard refresh on /dashboard can 404. The fix is to fall back to index.html. If your build emits a 200.html or you configure history-fallback in your framework, deep links work; otherwise ask in the panel for an SPA-style rewrite to index.html.

Build-time environment variables

Static builds bake variables in at build time. For Vite that’s import.meta.env.VITE_*; for CRA it’s REACT_APP_*. Set them as environment variables before building. Remember: anything in a static build is public — never put secrets there.

Why choose static

  • Fastest possible response (files straight from nginx).
  • Nothing to crash, minimal resource use.
  • Pairs perfectly with a separate API if you need a backend.

Running OrbixPanel? Static sites deploy from Git or a drag-and-drop upload. OrbixPanel.com → — the free, self-hosted, AI-powered hosting control panel.