Live text-to-speech demo using Deepgram's Speak 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 live text input via WebSocket connection
- Send the text to convert to audio to Deepgram's live Text-to-Speech API
- Returns real-time Text-to-Speech audio results to the client
- Audio starts playing after ALL chunks arrive and Flushed message received
- 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