You described an app to an AI, it wrote the code, and now it's sitting in a folder or a repo. The last mile — getting it onto the internet on a real URL — shouldn't be the hard part. With Ngris it isn't: push a repo or drop a folder and you're live on the edge, with no server to manage and no agent to run.
Push or drop — and you're live
There are two ways in. Connect a GitHub or GitLab repo and every push builds and ships automatically. Or upload a folder (or a .zip) straight from your machine. Either way the first successful build goes live on global HTTPS within seconds, with TLS provisioned for you.
curl -X POST https://api.ngris.com/v1/applications/quick-deploy \ -H "X-API-KEY: $NGRIS_API_KEY" \ -F "name=my-site" -F "file=@dist.zip" -F "wait=true"
That single call creates the app, uploads it, provisions the public endpoint, and returns the live URL.
Ngris builds it for you
You don't have to pre-build. Push your source and Ngris detects the framework — Vite, Next.js, Astro, SvelteKit, Nuxt, Gatsby, Angular, Hugo, Jekyll — and runs install + build in a locked-down, single-use sandbox: no network except your package registry, no credentials, read-only root, hard CPU/memory/time limits. Every build's log is captured and tails live, so when something breaks you see exactly why without leaving the page.
A preview URL for every deploy
Every ready deploy gets its own shareable, unguessable preview URL — independent of which version is live. Review a build, send it to a teammate, or check it on your phone before you promote it. Promoting or rolling back is an instant, atomic pointer flip: no rebuild, no downtime, no “redeploy and pray.”
Environment variables and secrets
Front-end builds need config — API URLs, publishable keys, feature flags. Add them per app and they're injected into the build with their exact names, so VITE_API_URL or NEXT_PUBLIC_TOKEN just works. Mark the sensitive ones as secrets and they're encrypted at rest and never shown again.
The edge you already know
A deployed app is a first-class Ngris endpoint, which means everything else on the platform applies to it unchanged: a custom domain with automatic TLS, per-endpoint auth (OAuth, API keys, SSO), a Web Application Firewall, rate limits, and live traffic inspection. Your bandwidth counts against one unified monthly allowance — the same pool as your tunnels — so there's one platform and one bill, not a pile of add-ons.
Or let Iris drive
Because the whole flow is an API, Iris — the built-in AI assistant — can drive it from chat: “deploy this repo and put it behind Google login,” and it creates the app, connects the repo, and attaches the endpoint policies, showing you a confirmation before it touches anything.
Get started
Read the Static Apps guide or the Quick Deploy API reference, then ship your first app. It really is one push.