How antonie-riziki/viable-public---might-delete-later works
ViAble is a voice-first browser accessibility assistant. A user asks about the active page by voice or text; the side panel obtains page context through the extension boundary, then presents spoken or typed guidance. Separate capabilities cover page reading, OCR, accessibility adaptations, and user-approved form or button actions. The graph reflects documented and excerpted calls; several runtime details are unsampled, so uncertain internal links are omitted.
Main entry points: service-worker.js Background Worker · App.tsx Side Panel · extension.ts Settings Boundary · voice.ts Voice Interaction
Components 15
User Experience
- Side Panel
src/App.tsx - Preferences
src/options/OptionsApp.tsx - Interaction Types
src/lib/domain.ts - Language Support
src/lib/language.ts
Browser Extension
- Settings Boundary
src/lib/extension.ts - Accessibility Settings
src/lib/accessibility.ts - Background Worker
public/background/service-worker.js
Page Interaction
- Page Content Script
public/content/page-context.js - Semantic Extractor
src/content/extractor.ts
Voice Services
- Voice Interaction
src/lib/voice.ts - Audio Playback
public/offscreen.js - Voice Proxy
server/voice-proxy.mjs - Gemini
- ElevenLabs
Other components
- User
Connections 17
- User → Side Panel: asks or acts
README.md - User → Preferences: sets preferences
README.md - Side Panel → Settings Boundary: requests page and settings
src/App.tsx - Preferences → Settings Boundary: loads and saves
src/options/OptionsApp.tsx - Side Panel → Voice Interaction: speaks and listens
src/App.tsx - Side Panel → Accessibility Settings: saves adaptations
src/App.tsx - Side Panel → Language Support: uses language analysis
src/App.tsx - Voice Interaction → Language Support: builds responses
src/lib/voice.ts - Voice Interaction → Settings Boundary: sends voice requests
src/lib/voice.ts - Settings Boundary → Background Worker: messages extension
src/lib/extension.ts - Accessibility Settings → Background Worker: applies settings
src/lib/accessibility.ts - Background Worker → Page Content Script: requests page context
public/background/service-worker.js - Background Worker → Page Content Script: applies page settings
public/background/service-worker.js - Background Worker → Voice Proxy: forwards OCR requests
public/background/service-worker.js - Background Worker → Audio Playback: creates audio document
public/background/service-worker.js - Voice Proxy → Gemini: requests reasoning
README.md - Voice Proxy → ElevenLabs: requests speech
README.md