Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Official JavaScript SDK for Deepgram.
| Date | Stars |
|---|---|
| 2026-07-24 | 268 |
| 2026-07-25 | 268 |
| 2026-07-28 | 268 |
| 2026-07-30 | 268 |
| 2026-08-06 | 268 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
35.0
growth rate 0.00%/day
# Deepgram JavaScript SDK

[](https://www.npmjs.com/package/@deepgram/sdk)
[](https://nodejs.org/)
[](./LICENSE)
The official JavaScript/TypeScript SDK for Deepgram's automated speech recognition, text-to-speech, and language understanding APIs. Power your applications with world-class speech and Language AI models.
## Documentation
Comprehensive API documentation and guides are available at [developers.deepgram.com](https://developers.deepgram.com).
### Migrating From Earlier Versions
- [v2 to v3](./docs/Migrating-v2-to-v3.md)
- [v3 to v4](./docs/Migrating-v3-to-v4.md)
- [v4 to v5](./docs/Migrating-v4-to-v5.md) (current)
## Installation
Install the Deepgram JavaScript SDK using npm:
```bash
npm install @deepgram/sdk
```
## Reference
- **[API Reference](./reference.md)** - Complete reference for all SDK methods and parameters
## Usage
### Quick Start
The Deepgram SDK provides clients for all major use cases:
#### Real-time Speech Recognition (Listen v1)
Connect to our WebSocket and transcribe live streaming audio:
```typescript
import { DeepgramClient } from "@deepgram/sdk";
const client = new DeepgramClient();
const connection = await client.listen.v1.connect({
model: "nova-3",
language: "en",
punctuate: "true",
interim_results: "true",
});
connection.on("open", () => console.log("Connection opened"));
connection.on("message", (data) => {
if (data.type === "Results") {
console.log(data);
}
});
connection.connect();
await connection.waitForOpen();
// Send audio data
connection.socket.send(audioData);
```
#### File Transcription
Transcribe pre-recorded audio files ([API Reference](./reference.md)):
```typescript
import { createReadStream } from "fs";
import { DeepgramClient } from "@deepgram/sdk";
const client = new DeepgramClient();
const response = await client.listen.v1.media.transcribeFile(
createReadStream("audio.wav"),
{ model: "nova-3" }
);
console.log(response.results.channels[0].alternatives[0].transcript);
```
#### Text-to-Speech
Generate natural-sounding speech from text ([API Reference](./reference.md)):
```typescript
import { DeepgramClient } from "@deepgram/sdk";
const client = new DeepgramClient();
const response = await client.speak.v1.audio.generate({
text: "Hello, this is a sample text to speech conversion.",
model: "aura-2-thalia-en",
encoding: "linear16",
container: "wav",
});
// Save the audio file
const stream = response.stream();
```
#### Text Analysis
Analyze text for sentiment, topics, and intents ([API Reference](./reference.md)):
```typescript
import { DeepgramClient } from "@deepgram/sdk";
const client = new DeepgramClient();
const response = await client.read.v1.text.analyze({
text: "Hello, world!",
language: "en",
});
```
#### Voice Agent (Conversational AI)
Build interactive voice agents:
```typescript
import { DeepgramClient } from "@deepgram/sdk";
const client = new DeepgramClient();
const connection = await client.agent.v1.connect();
connection.on("open", () => console.log("Connection opened"));
connection.on("message", (data) => {
if (data.type === "ConversationText") {
console.log(data);
}
});
connection.connect();
await connection.waitForOpen();
connection.sendAgentV1Settings({
type: "Settings",
agent: {
language: "en",
listen: {
provider: { type: "deepgram", model: "nova-3" },
},
think: {
provider: { type: "open_ai", model: "gpt-4o-mini" },
prompt: "You are a friendly AI assistant.",
},
speak: {
provider: { type: "deepgram", model: "aura-2-thalia-en" },
},
},
});
```
## Authentication
The Deepgram SDK supports two authentication methods:
### API Key Authentication
Use yExcerpt of 9,875 characters
Read on GitHubWould you bet a product on this? Bounded 0–100 and slow moving.
matched fp:f00df3a0192df1e2, topic:speech-recognition, topic:text-to-speech, topic:asr