Assist — AI Voice Assistant
Assist is a Python-based multilingual AI voice assistant that executes tasks and answers queries through natural voice commands. It delivers a complete human-computer voice interaction loop — listen, understand, reason, speak — packaged in a cross-platform desktop app.
The Problem
Voice assistants on mobile platforms are deeply integrated with proprietary ecosystems (Apple, Google) and unavailable as standalone desktop applications. Developers and power users needed a lightweight, customizable, cross-platform voice assistant they could run and extend locally.
The Solution
A modular Python pipeline: SpeechRecognition captures and transcribes voice input → OpenAI API generates intelligent responses → gTTS/pyttsx3 converts responses to speech → Kivy UI renders the interaction. The dual TTS setup (gTTS for online, pyttsx3 for offline) ensures the assistant works without internet access for basic commands.
Key Features
Challenges & Learnings
Kivy's audio capture pipeline on macOS required platform-specific microphone permission handling that standard pyaudio didn't expose. A wrapper around AVFoundation APIs was used for reliable macOS microphone access. Latency between voice capture and response playback needed optimization — achieved by streaming OpenAI API responses and beginning TTS synthesis before the full response was received.
Business Impact
Enables hands-free computing on any desktop OS without cloud lock-in. Useful for accessibility scenarios, developer automation, and any workflow where keyboard interaction is inconvenient.
Future Direction
Local LLM integration (Ollama) to eliminate cloud dependency, wake-word detection for always-on mode, and a plugin SDK for community-contributed task modules.
Tech Stack
Quick Links
Want to see more of my work?
Back to Projects