Skip to content

yosebyte/rust-voice-assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Rust Voice Assistant

Rust Voice Assistant

A lightweight Rust-based voice assistant with speech-to-text and text-to-speech capabilities, using Whisper for STT and ElevenLabs for TTS.

πŸ“– Overview

Rust Voice Assistant captures audio asynchronously, transcribes it with Whisper, processes basic commands, and responds with ElevenLabs TTS. Ideal for offline STT and cloud TTS integration.

🎬 Demo

Set API key, run cargo run, say "time", hear response.

✨ Features

-🎀 STT & TTS

  • Whisper for transcription.
  • ElevenLabs for speech synthesis.

-πŸš€ Async

  • Tokio for concurrency.
  • CPAL for audio capture.

-πŸ› οΈ Command Processing

  • Basic NLP for commands.

πŸ“¦ Installation

-πŸ”§ Compile from Source

Clone

git clone https://github.com/mkyla/rust-voice-assistant.git cd rust-voice-assistant

Build

cargo build --release

πŸ“‹ Usage Guide

  1. Set ELEVENLABS_API_KEY
  2. Download Whisper model to models/
  3. Run ./target/release/rust-voice-assistant

Say commands, get responses.

βš™οΈ Configuration

  • API Key: ELEVENLABS_API_KEY env var
  • Model: models/ggml-base.en.bin

πŸ› οΈ Development

-🧩 Core Components

  1. main.rs: Audio loop, transcription, command handling, TTS.

-πŸ› οΈ Tech Stack

  • Rust 2021
  • STT: Whisper
  • TTS: ElevenLabs API
  • Audio: CPAL, Rodio

πŸ“„ License

BSD-3-Clause

About

Rust voice assistant with STT and ElevenLabs TTS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages