Skip to content

The Gateway ​

NetGet is a reverse proxy and domain placement layer built on OpenResty (Nginx + LuaJIT). It is the physical entry point for a node in the neurons.me stack.


What it handles ​

Responsibilitynetget
HTTP → HTTPS redirection✅
SSL certificate management (Let's Encrypt + wildcard)✅
Domain → static folder routing✅
Domain → port proxy routing✅
Hot-reload routing without nginx restart✅
Monad endpoint resolution✅
Node landing page✅

The main server ​

When suis-macbook-air.local (or any hostname.local) is hit on port 80, netget serves the node landing page from ~/.get/html/. That page:

  • Identifies the node (hostname from location.hostname)
  • Shows node status (online)
  • Boots the all.this environment if available

The landing page ships with the netget package at main-server/index.html and is deployed to ~/.get/html/ on first run.


Opening the panel ​

bash
netget

Walks through:

  1. OpenResty installation check
  2. Self-signed certificate generation (if missing)
  3. Domain registration and routing
  4. Monad endpoint assignment

CLI reference ​

bash
netget                     # interactive main panel
netget reload              # reload OpenResty (no need for nginx in PATH)
netget restart             # alias for reload
netget generate-domain-map # sync config → ~/.get/runtime/domain-map.json
netget deploy <user> <pass> --server <url> --targets "['/path/to/project']"

OpenResty engine ​

NetGet uses OpenResty instead of plain Nginx because:

  • Lua scripting — domain routing logic lives in Lua, not static nginx config
  • Hot-reload — domain-map.json is re-read every second via ngx.timer.every
  • Dynamic SSL — per-domain cert selection via ssl_certificate_by_lua_block

The nginx config structure is generated by setNginxConfigFile.ts and written to /opt/homebrew/etc/openresty/nginx.conf (macOS) or the detected platform equivalent.