How utsapoddar/cadence works
Cadence is a static browser app for evidence-linked sound sessions. Users browse research-backed modules, inspect study and protocol details, and play a synthesized session; tinnitus playback additionally prompts for pitch calibration and saves that pitch locally. The README documents the catalog-to-interface workflow and synthesis modes; the sampled source confirms playback, calibration, and audio graph behavior. Some page initialization and catalog-loading details are unsampled, so those links are limited to documented relationships.
Main entry points: ui.js Cards and controls · tinnitus-matcher.js Pitch matcher · audio-engine.js Synthesis engine · index.html App shell
Components 10
App interface
- App shell
index.html - Cards and controls
ui.js
Module catalog
- Module data
frequencies.json - Cited studies
Audio playback
- Synthesis engine
audio-engine.js
Tinnitus calibration
- Pitch matcher
tinnitus-matcher.js
Other components
- Listener
- Web Audio API
- Browser storage
- GSAP animation
Connections 10
- Listener → Cards and controls: browses and controls
- App shell → Cards and controls: loads interface
- Module data → Cards and controls: supplies modules
- Cards and controls → Cited studies: opens citations
- Cards and controls → Pitch matcher: requests pitch
- Pitch matcher → Browser storage: reads and saves
- Pitch matcher → Web Audio API: plays probe tone
- Cards and controls → Synthesis engine: starts and stops
- Synthesis engine → Web Audio API: builds audio graph
- Cards and controls → GSAP animation: animates interface