Skip to content

deepgram/examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

153 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

examples

A collection of working examples showing how to use Deepgram SDKs with popular platforms, frameworks, and ecosystems.

→ Contributing · → Open PRs · → Suggest an example

Examples

# Example Language Integration Status
010 Getting Started — Transcribe a URL with Node.js Node.js Deepgram SDK ✅ passing
020 Twilio Media Streams — Real-Time Call Transcription Node.js Twilio ✅ passing
021 Twilio Voice + Deepgram Voice Agent — AI Phone Agent Node.js Twilio ✅ passing
030 LiveKit Agents — Voice Assistant with Deepgram STT Python LiveKit ✅ passing
040 LangChain STT Tool — Transcribe Audio in AI Pipelines Python LangChain ✅ passing
050 Vercel AI SDK — Transcribe Audio and Generate Speech with Deepgram Node.js Vercel AI SDK ✅ passing
051 Next.js Streaming STT + TTS with Deepgram via the Vercel AI SDK Node.js Vercel AI SDK ✅ passing
060 Discord Bot — Transcribe Audio Attachments with Deepgram Node.js Discord ✅ passing
070 Vonage Voice API — Real-Time Call Transcription Node.js Vonage ✅ passing
080 Pipecat Voice Pipeline — Conversational Bot with Deepgram STT & TTS Python Pipecat ✅ passing
090 Expo Live Transcription JavaScript Expo ✅ passing
100 FastAPI Audio Transcription API Python FastAPI ✅ passing
110 Cloudflare Worker — Edge Audio Transcription Node.js Cloudflare ✅ passing
120 Slack Bot — Auto-Transcribe Audio Messages with Deepgram Node.js Slack ✅ passing
130 Telegram Voice Transcription Bot Python Telegram ✅ passing
140 Audio to Subtitles CLI Python Deepgram SDK ✅ passing
150 Flutter Voice Transcription Dart Flutter
160 LlamaIndex Audio Document Loader — Transcribe Audio into RAG Pipelines Python LlamaIndex ✅ passing
170 Electron Live Transcription Overlay Node.js Electron ✅ passing
180 Zoom Cloud Recording Transcription with Deepgram Node.js Zoom ✅ passing
190 Daily.co Real-Time Transcription Overlay Node.js Daily.co ✅ passing
200 Vanilla JavaScript Browser Transcription (No Bundler) Node.js Deepgram SDK ✅ passing
210 OpenAI Agents SDK Voice Pipeline with Deepgram STT & TTS Python OpenAI Agents SDK ✅ passing
220 Django Channels Real-Time Transcription with Deepgram Live STT Python Django ✅ passing
230 n8n Community Nodes for Deepgram Node.js n8n ✅ passing
240 Nuxt Streaming STT + TTS with Deepgram Node.js Nuxt ✅ passing
260 NestJS WebSocket Real-Time Transcription Node.js NestJS ✅ passing
270 SvelteKit Real-Time Live Transcription Node.js SvelteKit ✅ passing
280 Express.js + React Live Transcription (TypeScript) Node.js Express + React ✅ passing
290 AWS Lambda Serverless Audio Transcription Python AWS Lambda ✅ passing
300 Spring Boot Real-Time Transcription with Deepgram Java Spring Boot
310 CrewAI Voice-Enabled Multi-Agent System with Deepgram Python CrewAI ✅ passing
340 Tauri Desktop Live Transcription Rust Tauri ✅ passing
350 Asterisk / FreeSWITCH PBX to Deepgram Streaming STT Python Asterisk/FreeSWITCH ✅ passing
360 Kotlin Android Live Transcription Kotlin Jetpack Compose
370 Swift iOS Live Transcription Swift SwiftUI

Status last updated 2026-04-02.

CI / testing

Every PR that touches examples/** runs language-specific test jobs automatically. The e2e-api-check status check is required before merge.

Language Marker file
Node.js / TypeScript package.json
Python requirements.txt or pyproject.toml
Go go.mod
Java pom.xml or build.gradle
Rust Cargo.toml
.NET *.csproj or *.sln
Dart pubspec.yaml
Kotlin build.gradle.kts
Swift Package.swift or *.xcodeproj
CLI example.sh or src/*.sh

All examples are also tested on a recurring schedule to catch regressions from SDK updates or API changes.

Directory structure

examples/
  {NNN}-{slug}/           # e.g. 010-getting-started-node
    README.md             # What it does, prerequisites, env vars, how to run
    .env.example          # Every required environment variable (no values)
    src/                  # Source code
    tests/                # Tests — exit 0=pass, 1=fail, 2=missing credentials

tests/
  e2e.py                  # Deepgram STT + TTS smoke test (runs on every PR)

.github/
  workflows/              # CI workflows
  ISSUE_TEMPLATE/         # Issue templates

Numbering convention

Examples are numbered globally in increments of 10: 010, 020, 030 … A platform owns its group — a second Twilio example would be 021, not a new slot. New platforms claim the next free multiple of 10.

Setup

  1. Add DEEPGRAM_API_KEY as a repository secret — required for E2E tests
  2. Add partner credentials as needed (each example's .env.example lists them)

GITHUB_TOKEN is provided automatically by GitHub Actions.

Contributing

Open an issue to suggest a new example, or submit a PR directly. See CONTRIBUTING.md for guidelines.

Releases

No releases published

Packages

 
 
 

Contributors

Languages