0eebcb3aec
Pipeline web data-only complet : Cote feeds, OSC target :57124 ajoute au profil data-only.toml pour que le bridge.py diffuse vers : SC (57121) + oF (57123) + Web (57124). Cote web (data_only_viz/web/) : - server.js : Express :3211 + WS broadcast + osc UDP :57124 parse les paths /data/<feed>/<sub> en JSON et diffuse - public/dashboard.html : grille de cards live avec sparklines SVG vanilla (USGS, SWPC Kp/wind/Bz/X-ray, Blitz, OpenSky, Bluesky, meteo, air, ISS, volcans, social_buzz, grid) - public/map.html : Leaflet dark fullscreen avec markers ephemeres (60s TTL) pour seismes/foudre/avions/volcans + marker ISS persistant qui suit la position Cote launcher : - ProcessManager : startDataWeb / stopDataWeb + openDataDashboard / openDataMap, port :3211 hardcode, script attendu a metalVizDir/web/server.js - MenuBarContent : nouvelle row 'Dashboard data-only' en mode .dataOnly et .bodyMesh + boutons Dashboard/Carte monde quand le serveur tourne - stopAll inclut dataWebProc
AVLiveLauncher
macOS menubar launcher for AV-Live. Starts and stops sclang (which
auto-loads sound_algo/00_load.scd and serves the web UI), the
oscope-of visualizer, and the data_feeds Python bridge (USGS,
SWPC, grid frequency, lightning, pose, etc. → OSC) with one click
each, and aggregates their logs in one window.
Build
Requires Swift 5.7+ and Xcode Command Line Tools.
cd launcher
./build.sh
open build/AVLiveLauncher.app
The first run shows a waveform.path.ecg icon in the menubar. Click it
to open the popover.
Configuration
Three paths are stored in UserDefaults (~/Library/Preferences/cc.saillant.AVLiveLauncher.plist) :
| Default | Override |
|---|---|
/Applications/SuperCollider.app/Contents/MacOS/sclang |
Paths… → sclang binary |
~/Documents/Projets/AV-Live/sound_algo/00_load.scd |
Paths… → load file |
~/Documents/Projets/AV-Live/oscope-of/bin/oscope-of |
Paths… → oscope binary |
/opt/homebrew/bin/uv (or ~/.local/bin/uv) |
Paths… → uv binary |
~/Documents/Projets/AV-Live/data_feeds |
Paths… → data_feeds directory |
What it does
- Spawns
sclang <load_file>with stdout/stderr captured into the log window.sclangitself bootsscsynth, loads the 1099-SynthDef palette, and serves the web bridge on:8080. - Spawns the
oscope-ofbinary with cwd set to its parent directory (so oF can findbin/data/). - Spawns
uv run python bridge.py -vindata_feeds/for the real-world flux → OSC bridge. Off by default (Auto-start data_feeds toggle in Settings to enable). uv auto-syncs the venv on first run. - Quitting the menubar app sends
SIGTERMto all children.