Skip to content

v0.1.0

Release Date: December 2024

Initial release of the ElevenLabs Go SDK.

Highlights

This release provides a comprehensive Go SDK for the ElevenLabs API, built with AI assistance using Claude Opus 4.5 and Claude Code.

Features

Core Services

  • Text-to-Speech - Convert text to natural-sounding speech
  • Simple and advanced generation methods
  • Streaming audio support
  • Timestamp generation for word-level alignment
  • Multiple output formats (MP3, PCM, μ-law)
  • Speech-to-Text - Transcribe audio files
  • File and URL transcription
  • Speaker diarization support
  • Voices - Voice management
  • List, get, add, edit, delete voices
  • Voice settings configuration
  • Default settings retrieval
  • Models - Model information
  • List available models
  • History - Generation history
  • List, get, delete history items
  • Download generated audio
  • User - Account information
  • Get user subscription and usage info

Audio Processing

  • Sound Effects - Generate sound effects from text descriptions
  • Audio Isolation - Extract vocals/speech from audio
  • Forced Alignment - Get word-level timestamps
  • Text-to-Dialogue - Generate multi-speaker conversations

Content Management

  • Voice Design - Create custom AI voices
  • Music - Generate music from text prompts
  • Projects (Studio) - Long-form content management
  • Pronunciation - Dictionary management for custom pronunciations
  • Dubbing - Video/audio translation and dubbing

SDK Features

  • Functional options pattern for client configuration
  • Automatic API key from environment variable
  • Comprehensive error handling with typed errors
  • Rate limit detection helpers

Utility Packages

  • ttsscript - TTS script authoring for multilingual content
  • voices - Voice constants and metadata

Documentation

  • Comprehensive README with examples
  • MkDocs documentation site
  • API coverage tracking

Installation

go get github.com/grokify/go-elevenlabs

Example

client, _ := elevenlabs.NewClient()
audio, _ := client.TextToSpeech().Simple(ctx, voiceID, "Hello world!")