Skip to main content
AI Tool Radar
OSI-openOpen voice and text-to-speech

Parlor

fikrikarim

On-device, real-time voice and vision AI - powered by Gemma and Kokoro, no cloud.

1.8k stars(as of 2026-06-14)View on GitHub

What is Parlor?

Parlor is a local assistant combining a multimodal Gemma model with Kokoro TTS for real-time voice-and-camera conversations with no cloud dependency. It runs on Apple Silicon (MLX) or Linux GPU, uses Silero VAD for hands-free use, supports barge-in, and streams TTS at the sentence level.

Parlor in depth

Most voice assistants that feel genuinely conversational route your audio, and increasingly your camera feed, through someone else's servers. That is fine for convenience but a problem if you care about privacy, want to work offline, or simply do not want to manage API keys and per-minute billing. Parlor, a project by Fikri Karim, takes the opposite stance: it is a local assistant that runs voice, vision, and language understanding entirely on your own hardware with no cloud dependency. You speak naturally, optionally show it your camera, and it talks back, all processed on-device. It bundles a multimodal Gemma model for understanding speech and images together with Kokoro for text-to-speech, wrapped in a browser interface that connects to a local FastAPI WebSocket server.

The technical design is what makes Parlor feel responsive rather than clunky. Voice Activity Detection runs in the browser using Silero VAD, so there is no push-to-talk button: it listens for when you start and stop speaking and reacts hands-free. The Gemma model, served via LiteRT-LM, handles the combined audio and vision input, while Kokoro generates speech. Two choices matter most for the experience. First, TTS is streamed at the sentence level, so the assistant begins speaking as soon as the first sentence is ready instead of waiting for the full answer. Second, barge-in lets you interrupt mid-response, which is how real conversations actually work. On Apple Silicon the TTS path uses MLX, while Linux uses an ONNX backend.

Parlor is aimed squarely at developers, tinkerers, and privacy-conscious users who want a fully local voice and camera assistant and are comfortable with a command-line setup. Concrete use cases include a hands-free desk assistant that never sends audio off your machine, an offline companion for travel or air-gapped environments, and a base for experiments where you want camera awareness without sending images to a third party. It is also a reference implementation for anyone studying how to wire VAD, a multimodal model, and streaming TTS into a coherent real-time loop. Setup is straightforward for that audience: clone the repo, install the uv package manager, run a sync and a server command, and open localhost in a browser. The model downloads automatically on first run.

The honest caveats are significant. Parlor is described by its author as a research preview with rough edges and bugs expected, and it has no versioned releases, so there is no stable surface to build a product on. It runs only on Apple Silicon or Linux with a supported GPU: there is no Windows path and no CPU fallback, which rules out a large share of users immediately. It is effectively English-centric in practice, so multilingual reliability is not something to count on yet. Functionally it is a thin orchestration layer over Gemma and Kokoro, which means the voice quality is bound by what Kokoro can produce, and it inherits the limits of the underlying models. It is also a solo project, so support and longevity depend on one maintainer.

Against a commercial alternative like ElevenLabs, Parlor is not really competing on raw voice fidelity or polish: ElevenLabs offers higher-quality synthesis, broad language coverage, and a stable hosted API, at the cost of sending data to the cloud and paying per use. Parlor's entire value is the inverse, full local processing, zero API keys, and camera-aware conversation that never leaves your machine. Adopt it if you want a privacy-first, fully local assistant on Apple Silicon and you accept alpha-stage instability as the trade for that. Treat it as too early if you need multilingual support, a dependable SDK, Windows or CPU support, or production reliability. As a private, offline assistant to run and learn from today, it is a credible and refreshingly honest starting point.

Pros & Cons

Pros

  • Truly on-device - voice, vision and LLM all local, strong privacy story
  • Barge-in and sentence-level streaming give a natural conversational feel
  • Apache-2.0 throughout, actively maintained

Cons

  • English-only and Apple Silicon / Linux GPU only - no Windows or CPU path
  • Thin layer over Gemma + Kokoro - voice quality bound by Kokoro
  • Alpha-stage solo project with no versioned releases

License

Apache-2.0 (OSI-open)

When it is interesting

You want a privacy-first, fully local voice assistant with camera awareness and zero API keys, especially on Apple Silicon.

When it is too early

You need multilingual support, a stable SDK, or production reliability.

Commercial alternative & related

This repo featured in the 2026-07 edition of the Open-Source AI Radar.