Marketplace
<h1 align="center">ai-tts</h1>
<div align="center"> <h3>Premium sponsors</h3> <p> <a href="https://id8media.com"><strong>ID8 Media</strong></a> · <a href="https://one-studio.co"><strong>One Studio</strong></a> </p> <p><sub>Support togo — <a href="https://github.com/sponsors/fadymondy">become a sponsor</a>.</sub></p> </div>
Text-to-Speech
OtherTTS — ElevenLabs + OpenAI drivers.
togo-framework
bash
togo install togo-framework/ai-ttsInstall
bash
togo install togo-framework/ai-ttsai-tts adds text-to-speech to a togo app. It mirrors the togo driver pattern: a
single Synthesize interface with swappable provider drivers, selected by TTS_DRIVER.
Install
bash
togo install togo-framework/ai-ttsDrivers
Driver | Env | Notes |
|---|---|---|
| openai (default) | OPENAI_API_KEY | OpenAI TTS (tts-1, voices: alloy/echo/fable/onyx/nova/shimmer) |
| elevenlabs | ELEVENLABS_API_KEY | ElevenLabs (multilingual v2; voice = voice id) |
Rows per page
1–2 of 2Page 1 of 1
bash
TTS_DRIVER=elevenlabs
ELEVENLABS_API_KEY=...Add another provider by registering a driver in an init() — see tts.RegisterDriver.
Use (Go)
go
svc, _ := tts.FromKernel(k)
res, err := svc.Synthesize(ctx, tts.Request{Text: "Hello from togo", Voice: "nova"})
// res.Audio (bytes), res.ContentType ("audio/mpeg")
Use (REST)
Mount the handler under /api/ai/tts:
go
mux.Handle("/api/ai/tts/", http.StripPrefix("/api/ai/tts", tts.Handler(k)))
bash
curl -X POST http://localhost:8080/api/ai/tts/ \
-H 'content-type: application/json' \
-d '{"text":"Hello from togo","voice":"nova"}' --output hello.mp3
Pairs with ai-stt (speech-to-text) and the
ai plugin. MIT.
<div align="center"> <h3>Premium sponsors</h3> <p> <a href="https://id8media.com"><strong>ID8 Media</strong></a> · <a href="https://one-studio.co"><strong>One Studio</strong></a> </p> <p><sub>Support togo — <a href="https://github.com/sponsors/fadymondy">become a sponsor</a>.</sub></p> </div>