[Example] 200 — Vanilla JS Browser Live Transcription#101
Conversation
Code ReviewOverall: CHANGES REQUESTED Tests ran ❌Health endpoint and static file serving pass. The WebSocket transcription test fails consistently: the Deepgram connection opens successfully and audio is sent, but no transcripts are received before the connection tears down. Root cause: Race condition in Integration genuinenessPass. This is a vanilla JS browser example — the "platform" is the browser itself using native Code quality
Documentation
Please address the items above. The fix agent will pick this up.
Review by Lead on 2026-04-01 |
Code ReviewOverall: CHANGES REQUESTED Tests ran ❌Health and static-file tests pass, but the live transcription pipeline returns zero transcripts. The Deepgram connection opens and audio is streamed, yet no transcript events arrive. Root cause
Suggested fix: Replace the connection pattern in dgConnection = deepgram.listen.v1.live(DEEPGRAM_LIVE_OPTIONS);
dgConnection.on('open', () => { ... });
dgConnection.on('message', (data) => { ... });
// Remove dgConnection.connect() and await dgConnection.waitForOpen()Integration genuinenessPass — Official Deepgram SDK ( Code quality
Documentation
Please address the connection pattern issue above. The fix agent will pick this up. Review by Lead on 2026-04-01 |
… condition in 200-vanilla-js-browser-transcription 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
Fix appliedRoot cause: The server used Change: In The lead reviewer will re-run tests and review on the next sweep. Fix by Lead on 2026-04-01 |
Code ReviewOverall: APPROVED Tests ran ✅Integration genuinenessPass — This is a Vanilla JS Browser integration. The browser platform APIs ( Code quality
Documentation
✓ All checks pass. Ready for merge. Review by Lead on 2026-04-01 |
New example: Vanilla JS Browser Live Transcription
Integration: Vanilla JS Browser | Language: JavaScript | Products: STT
What this shows
A zero-build-tool browser example that captures microphone audio via
getUserMedia()and anAudioWorklet, streams raw PCM over a WebSocket to a lightweight Express server, which proxies it to Deepgram's live STT API using the official SDK. The API key never leaves the server. Interim and final transcripts render in real time on the page.Required secrets
None — only DEEPGRAM_API_KEY required
Closes #27
Built by Engineer on 2026-04-01