Ngris vs Netlify
Netlify hosts your frontend. Ngris runs your whole stack — and guards it.
Looking for a Netlify alternative that builds and hosts your front-end framework app behind a security edge? Ngris deploys the same way — drop a .zip or connect a git repo, and we run your npm/yarn/pnpm install and build in a sandboxed job, then serve the output on our global edge at an HTTPS URL with your own custom domain. We auto-detect and build React (CRA), Vite, Vue, Svelte/SvelteKit, Angular, Astro, Gatsby, Next.js (static export), Nuxt (generate) and Hugo (plus prebuilt static). What’s different — and the reason to pick Ngris: every deployed site sits behind the same edge policy engine Ngris uses for tunnels — WAF, edge auth, rate limits, geo/CIDR rules and bot management, per route — with no second vendor to bolt on. This is an honest, feature-by-feature comparison: we only claim what our code ships today, and we state our scope plainly — including where Ngris is narrower than Netlify.
Read this first — scope. Ngris Deploy builds and hosts front-end framework and JAMstack apps — it runs your npm/yarn/pnpm install and build in a sandboxed job and serves the static output on the edge (React, Vite, Vue, Svelte/SvelteKit, Angular, Astro, Gatsby, Next.js static export, Nuxt generate, Hugo, plus prebuilt static). And it hosts the backend too — a Go, Node, or Python service (auto-detected), or any app with a Dockerfile (a Next.js server included) — built in a sandboxed job and run behind the same policy engine as your front end. That's live today. Ngris also runs per-request serverless / edge functions — a scale-to-zero function app type where you write a Web Fetch-style handler and Ngris wakes it on demand and idles it back to zero (deploy a long-running backend instead when you want an always-on service). Front end, back end, and functions, one platform, behind a real security edge (and, optionally, tunneling) — that's more than Netlify gives you.
Deploy your backend — Go, Node, Python, or any Dockerfile — behind the Ngris edge. Live now. Run your backend behind the same policy engine as your front end (WAF, edge auth, rate limits) — one platform, one edge, one bill. Go, Node, and Python services are auto-detected from your repo; bring a Dockerfile for anything else, a Next.js server included.
Ngris pricing at a glance
What Ngris adds on top of static hosting
Netlify pioneered git-push static deploys with preview URLs. Ngris gives you that workflow and wraps every site in a policy-enforcing security edge.
Builds your framework app
Upload a .zip, connect a GitHub/GitLab repo for auto-deploy on push, or one-call quick-deploy. Ngris auto-detects the framework and runs your npm/yarn/pnpm install and build (React, Vite, Vue, Svelte/SvelteKit, Angular, Astro, Gatsby, Next.js static export, Nuxt generate, Hugo — overridable) in a sandboxed job, then publishes the output to our global edge at a live HTTPS URL with custom domains.
Preview URLs & instant rollback
Every deploy gets its own preview URL (<deploy>.<your-domain>). Promotion is an atomic pointer flip, so rollback to any previous deploy is instant — no rebuild.
A WAF in front of your site
The differentiator: your deployed site runs behind Ngris’s per-endpoint policy engine — OWASP WAF, rate limits, IP/CIDR and geo rules, and JA3 bot management — applied per route. Netlify doesn’t ship an OWASP WAF or mTLS per route.
Edge authentication
Gate a whole site or a path with HTTP basic auth, mutual TLS (client CAs), an OAuth2 + PKCE portal, or JWT validation — enforced at the edge, before a request reaches your files. Ideal for staging sites, internal tools, and docs.
Env vars, secrets & build config
Per-app environment variables and encrypted secrets (masked in logs), plus publish-dir, custom 404, and SPA-fallback settings. Build logs stream live while your deploy runs.
One platform: expose or deploy
Ngris is a two-sided edge platform. Deploy a site to the edge, and tunnel a local or Kubernetes service through the same edge with the same policies — plus the Iris AI assistant to draft your firewall and rate-limit rules.
Ngris vs Netlify, feature by feature
“Yes” means the capability ships in Ngris today. For Netlify we mark only widely-known facts; where a capability isn’t applicable or varies by plan we say so plainly rather than guess. The rows where Netlify wins are marked honestly.
| Feature | Ngris | Netlify |
|---|---|---|
| Build & hosting | ||
| Builds framework apps (npm/yarn/pnpm install + build) | ||
| React (CRA), Vite & Vue builds | ||
| Svelte/SvelteKit (static), Angular, Astro, Gatsby builds | ||
| Next.js static export, Nuxt generate, Hugo | ||
| Framework auto-detection (overridable) | ||
| Prebuilt / plain static hosting | ||
| Single-page app (SPA) hosting | ||
| Deploy by git push (GitHub/GitLab) | ||
| Deploy by drag-and-drop / zip upload | ||
| Global edge / CDN delivery | ||
| Custom domains + automatic TLS | ||
| Per-deploy preview URLs | ||
| Instant atomic rollback | ||
| Streamed build logs | ||
| Env vars + encrypted secrets | ||
| SPA fallback / custom 404 / publish dir | ||
| Backend & full-stack hosting | ||
| Backend / API hosting (Go, Node & Python auto-detected) | ||
| Run any Dockerfile — any language or framework, a Next.js server included | ||
| Where Netlify is broader | ||
| Serverless / edge functions (per-request FaaS) | ||
| Build cache | ||
| Monorepo support | ||
| Custom install / build / output-dir override | ||
| Large plugin / integration ecosystem | ||
| Security & policy at the edge | ||
| Per-endpoint policy engine (17+ rule types) | Built-in | Not applicable |
| OWASP WAF in front of the site | Built-in | Not applicable |
| Rate limiting | Not applicable | |
| IP / CIDR & geo restrictions | Not applicable / check plan | |
| JA3 bot management | Not applicable | |
| Edge basic auth | Password protection / check plan | |
| Mutual TLS (client CAs) per route | Built-in | Not applicable |
| OAuth2 + PKCE / JWT edge auth | Not applicable / check plan | |
| Beyond hosting | ||
| Tunnel a local / K8s service (expose) | Not a feature | |
| Kubernetes operator (CRDs + Gateway API) | 9 CRDs | Not a feature |
| AI assistant for edge rules (Iris) | Built-in (Iris) | Not applicable |
| MCP server / AI-native control (manage from Claude) | Built-in (mcp.ngris.com) | Not applicable |
| Live request inspector + server-side replay | Built-in | Not applicable |
Netlify’s feature set and pricing change over time and vary by plan — check netlify.com for their current tiers. “Not applicable” means the capability isn’t part of that product’s model; “check plan” means we aren’t asserting a yes or a no. Ngris Deploy builds & hosts framework/JAMstack front ends and backends (Go/Node/Python services, or any Dockerfile — a Next.js server included) live today, and runs scale-to-zero serverless / edge functions as a fifth app type — see the scope note above.
Where Ngris is still maturing
Honesty first — where Ngris Deploy is narrower than Netlify, and the flags we ship with today.
Serverless / edge functions — scale-to-zero
Ngris builds and hosts front-end framework and JAMstack apps (React, Vite, Vue, Svelte, Angular, Astro, Gatsby, Next.js static export, Nuxt generate, Hugo) and backends — a Go / Node / Python service, or any app with a Dockerfile (a Next.js server included), run behind the same policy engine. It also runs per-request serverless / edge functions: a scale-to-zero function app type where you write a Web Fetch-style handler and Ngris wakes it on demand and idles it back to zero. FaaS-first architectures are a first-class fit; for an always-on service, deploy a long-running managed backend.
No build cache or monorepo (yet)
Builds run fresh (no incremental cache) and it's one git repo per app (no monorepo path selection). You can override the detected install, build, and output-dir commands, but there are no multi-step build pipelines or a plugin marketplace like Netlify’s.
HTTP/3 is experimental
HTTP/3 / QUIC works but is not yet marked production-stable. HTTP/1.1 and HTTP/2 are the default delivery paths for your deployed site.
Iris autonomy is firewall-only
The Iris AI assistant can act autonomously only on firewall rules, and auto-reverts. Every other change is gated behind an explicit confirmation card with a dry-run.
Dedicated-IP enforcement is being hardened
Dedicated ports and IPs are built; full end-to-end enforcement of dedicated IPs is still being tightened. Talk to us before you depend on it in production.
Deploy in 60 seconds
Create an app and connect your repo
Connect a GitHub/GitLab repo (auto-deploy on push) — Ngris detects the framework and runs your install + build — or drop a .zip of an already-built site. Either way it serves the output at your edge URL.
Add a custom domain
Point your domain at the edge and Ngris provisions TLS automatically — every deploy still gets its own preview URL.
Turn on WAF, auth & rate limits
Attach a traffic policy, enable edge auth, or ask Iris to write a firewall rule — all per endpoint. And if you also need to expose a local service, the same CLI tunnels it:
curl -fsSL https://ngris.com/install.sh | shRelated comparisons & guides
Ngris vs Vercel
Deploy a React or Vite front end and run the backend on the same edge — behind a WAF, edge auth, and rate limits.
Deploy a React or Vite app
The head-to-head walkthrough: build from git, preview URLs, env vars, and a security edge in front of every deploy.
Expose localhost to the internet
Before you deploy, share work in progress: turn localhost:3000 into a public HTTPS URL in one command.
Static hosting with a security edge. Free to start.
Developer is $0, Team is $10/mo, Enterprise is $25/mo. No credit card to get going.