Camada UI · React 19 + Vite
AppEntry.tsx
Orquestrador de fluxo: Auth → Onboarding → Hearing → App
React
AuthScreen.tsx
Login / cadastro · SHA-256 local · roles: terapeuta / paciente
React
OnboardingScreen v3
7 etapas: boot → objetivo → breath → safety → hearing → protocolo → prescrição
React
SessionScreen.tsx
Visualização em tempo real: Lissajous, progresso, BreathCircle
React
Motor Determinístico · Zero IA
useFieldResonanceEngine.ts
Tick loop via performance.now() · 25 engines R1–R25 · Object.freeze
TypeScript
DeterministicEngine_RXX.ts
8 estágios imutáveis por protocolo · parâmetros fixos: carrier, bin, strobe, rumble, breath
TypeScript
useBreathVoice v6
4 modos acústicos · BiquadFilter biológico · curvas sigmoidais · ruído marrom
Web Audio API
iOSWakeLock v3
3 camadas: Screen Wake Lock + Canvas stream + AudioContext · keepalive
TypeScript
Triagem e Avaliação
HearingAssessmentScreen
16 frequências clínicas · mapa de compatibilidade por protocolo
React
TinnitusAssessmentScreen v3
8 rodadas de bissecção · 3 perfis: mono / bilateral-igual / bilateral-diferente · precisão ~22 Hz
React
BreathGate v3
Portão respiratório pré-sessão · 4 padrões clínicos · guia sonoro sustentado
Web Audio API
Pipeline de Áudio · Web Audio API
SoundMixer
OscillatorNode binaural · carrier + beat diferencial · waveform: sine
Web Audio
BrownNoiseBuffer
Buffer 60s com crossfade · cama acústica respiratória · loop contínuo
Web Audio
BiquadFilterNode
Filtro passa-baixa biológico · cutoff 400→3000 Hz por fase · curva sigmoidal
Web Audio
StereoPannerNode
Espacialização dinâmica · expansão na inspiração · retorno ao centro na expiração
Web Audio
OscillatorNode
→
BiquadFilter (notch R25)
→
StereoPanner
→
GainNode (master)
→
AudioContext.destination
Segurança e Auditoria
SessionLogger
SHA-256 por sessão · timestamp · stageLog · exportável como JSON
SHA-256
IndexedDB
authService.ts
Senha hash SHA-256 · localStorage · sem backend · roles por userId
localStorage
Contraindicações
Hard-coded em cada engine · strobe ≤ 2.0 Hz verificado · não bypassável
TypeScript