Run it yourself

Self-hosting

No database, no environment variables, no background jobs. Node 20+ is the only requirement.

Run it locally

git clone https://github.com/Somilg11/nautilus.git
cd nautilus
npm install
npm run build
npm start          # http://localhost:3000

Deploy it

TargetHow
VercelImport the repo; the default Next.js preset is correct. No environment variables.
Any Node hostnpm ci && npm run build && npm start, behind nginx or Caddy for TLS.
Static CDNSet output: "export", build, and serve out/.
DockerA working Dockerfile is in docs/SELF_HOSTING.md.

Security notes for operators

  • Serve over HTTPS — the app sends Strict-Transport-Security on every response.
  • Don't strip the app's response headers at your proxy. The Content-Security-Policy is what stops an injected script from reading visitors' API keys.
  • A static export cannot send those headers — re-create them at the CDN layer, copying the policy from next.config.ts verbatim.
  • Adding an analytics or embed script means adding its host to connect-src / script-src. Add the specific host, never a wildcard.
Deploying for a team?
Consider removing the provider hosts from connect-src and hiding the Keys tab, so API keys are never entered on a shared origin in the first place.

Upgrading

git pull origin main
npm install
npm run build

Saved diagrams are forward-compatible: unknown fields are dropped on load rather than breaking the canvas, and exported JSON from any version imports cleanly.