# Swarm visualization prototype A 2D top-down view of the swarm data plane from [04 — Swarm sync](../docs/04-swarm-sync.md): drones patrol an area with static and mobile obstacles, exchange 5 Hz pose broadcasts (blue link flashes), and run opportunistic bulk sync of sealed partitions (green links with live rate and cumulative up/down counters). Optional **3d** checkbox in the header switches to a Three.js perimeter patrol scene (WebGPU/WebGL, shader terrain, transit escort, search panel). Off by default. No backend — a pure client-side simulation of the same behavioral model the Python simulator implements over real Parquet and UDP. ## Run ```bash npm install npm run dev # http://localhost:5173 ``` ## What to look at - **Links appear and disappear** as drones move in and out of radio range; persistent links render semi-transparent, broadcast deliveries flash them briefly. - **Busy links turn green** and show current rate plus total transferred (`↑` / `↓`) — the bandwidth budget from the sync design made visible. - **Per-drone label**: id, current Wi-Fi channel (hopping), battery. - Controls: drone count, simulation speed, pause. - **3d** — perimeter patrol, altitude, detection beams, 4-drone escort sphere