Live speech-to-text transcription demo using Deepgram's Listen API with Node.js backend and web frontend.
Before you start, it's essential to generate a Deepgram API key to use in this project. Sign-up now for Deepgram and create an API key.
- Deepgram API Key (sign up for free)
- Node.js 24 and pnpm 10+
Note: This project uses strict supply chain security measures. npm and yarn will NOT work. See SECURITY.md for details.
Follow these steps to get started with this starter application.
- Clone the repository
Go to GitHub and clone the repository.
- Install dependencies
Install the project dependencies:
# Option 1: Use the helper script (recommended)
pnpm run install:all
# Option 2: Manual two-step install
pnpm install
cd frontend && pnpm install && cd ..Note: Due to security settings (ignore-scripts=true), frontend dependencies must be installed separately. The install:all script handles both steps.
- Set your API key
Create a .env file:
DEEPGRAM_API_KEY=your_api_key_here- Run the app
Development mode (with hot reload):
pnpm devProduction mode (build and serve)
# Build the frontend
pnpm build
# Start the production server
pnpm startThis application:
- Accepts a live audio stream URL via WebSocket connection
- Fetches the audio stream from the provided URL
- Sends binary audio data to Deepgram's live Speech-to-Text API
- Returns real-time transcription results to the client
- Open an issue in this repository
- Join the Deepgram Github Discussions Community
- Join the Deepgram Discord Community
See our Contributing Guidelines to learn about contributing to this project.
This project follows the Deepgram Code of Conduct.
For security policy and procedures, see our Security Policy.
MIT - See LICENSE