Skip to content

deepgram/examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

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

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