Install & setup
Step-by-step setup of the orchestrator app and worker SDK.
Prerequisites
- bun 1.1+ (pnpm/npm also work)
- Docker for building the worker image (Nmap / Nuclei / ZAP / Trivy)
- A Lovable Cloud project (provisions backend + auth)
- A Cloudflare Turnstile site & secret key
1. Clone and install
git clone <repo>
cd nso
bun install2. Environment variables
Client (committed to .env, prefixed with VITE_):
VITE_SUPABASE_URL=...
VITE_SUPABASE_PUBLISHABLE_KEY=sb_publishable_...
VITE_TURNSTILE_SITE_KEY=0x4AAAAAA...Server-only (Lovable Cloud secrets โ never VITE_):
SUPABASE_SERVICE_ROLE_KEY=...
TURNSTILE_SECRET_KEY=...See Configure for the full checklist, and /guides/supabase โ Where to paste API keys and env vars for a step-by-step walkthrough of where each Supabase key comes from and where it is pasted.
3. First run
bun run devOpen http://localhost:8080. Sign up, create your first tenant via/onboarding, then proceed to /assets.
4. Build and register a worker
From sdk/nso-worker:
docker build -t nso-worker .
docker run --rm \
-e NSO_API_URL=https://<your-app> \
-e NSO_WORKER_ID=<id from /settings/workers> \
-e NSO_WORKER_TOKEN=<token from /settings/workers> \
nso-workerThe worker appears online on /settings/workers after the first heartbeat (~30s).