Cury-specific scripts are grouped by purpose to make selection and testing easier.
light-language/- UI/ambient animation enginesbutton-control/- BLE button listener and test utilitieslegacy/- Compact or older variants kept for reference
light-language/- Use case: Build branded LED behavior for product states (boot, ready, active, warning, error, night).
- User persona: UX/product engineer prototyping device feedback language.
button-control/- Use case: Control Cury animation scripts from a BLU button and validate BLE event payloads.
- User persona: Field integrator or installer pairing physical controls with scripted behavior.
legacy/- Use case: Keep a compact fallback script for quick deployment or regression comparison.
- User persona: Support engineer troubleshooting behavior differences across script revisions.
button-control/cury-btn-listener.shelly.jsandbutton-control/cury-btn-listener 1.shelly.jsare near-duplicates.- Both map BLU button actions to animation control.
cury-btn-listener 1.shelly.jsadds BLE scanner options (addrfilter +active: false) and extra comments.
light-language/cury-light-language-2.shelly.jsandlight-language/cury-light-language-v2.shelly.jsare different implementations, not duplicates.-2is a state-machine light language with 9 states.-v2is a step-based crossfade animation loop.
legacy/cury-mini.shelly.jsis a compact/legacy-style variant close in behavior tocury-light-language-2.shelly.js, but includes extra condensed logic and hardware polling.