ngris hosts your front end on the same edge that fronts your tunnels. Deploy a plain static site or a framework app by uploading a build folder or with git push-to-deploy, and ngris serves it at a public URL behind the same WAF and policy engine. Static hosting is available on the free tier.
What ngris builds
ngris auto-detects and builds common frameworks in a sandboxed job, then serves the output:
- React (Create React App), Vite, Vue, Svelte / SvelteKit (static), Angular, Astro, Gatsby.
- Next.js (static export) and Nuxt (generate).
- Hugo, plus prebuilt / plain static sites served as-is.
The install, build, and output settings are auto-detected but can be overridden per app, and per-app environment variables are injected at build time.
Option 1: upload a folder
Open Applications in the dashboard, create an application, and upload your build folder (or a zip). ngris publishes it to the edge and gives you a live URL.
Option 2: git push-to-deploy
Connect a GitHub or GitLab repository. Every push to your deploy branch triggers a build, and ngris publishes the result automatically.
# From your project, commit and push as usual
git add .
git commit -m "Update site"
git push origin main
# ngris builds the commit and serves the output on the edge
Preview URLs and rollback
Each deploy gets its own preview URL in the form {deploy-id}.{plan-domain}, so you can review a build before promoting it. Promoting a deploy is an instant pointer flip, and you can roll back to any previous deploy in one click from the application's deploys list.
Custom domains and policy
You can serve an application on your own custom domain, and because it is served from the ngris edge it inherits the same firewall, WAF, and traffic-policy engine as your tunnels. See Managed backends if you also need to run server-side code.