selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

SayIt logo

Self-host SayIt

v0.2.3

Open-source voice typing for Windows with AI cleanup

BetaOpen SourceAGPL-3.0
Docker ComposeCompose file & guide
docker compose up -d --build
Updatedlast week
LanguageTypescript
Setup difficultyModerate
ThemeDark mode
Stars
456
CPU
NVIDIA GPU with CUDA for GPU inference
Port
8000 (FastAPI backend server)
SayIt in action: pressing the shortcut, speaking, and cleaned-up text appearing at the cursorHome screen showing dictation stats and feedback boxVoice engine settings with Local, Cloud API, and Server mode cardsAI cleanup settings with built-in presets and per-app rulesAI providers grid with measured response timesHistory list with search, raw ASR text, timings, and playback controlsAppearance settings with app themes, waveform themes, overlay width, and live overlay preview

What is SayIt?

SayIt lets Windows users dictate text by pressing a hotkey. The spoken words are transcribed and then refined by an AI model before being inserted at the cursor position. Three recognition backends are offered: a local mode that runs GGUF models on the user's graphics card, a cloud mode that sends audio directly to provider APIs, and a server mode that connects to a self-hosted FastAPI backend. The backend can be deployed with Docker Compose and uses Qwen3-ASR for transcription with optional AI cleanup. The project includes a Tauri-based desktop client and a Python server component. It is distributed under the AGPL-3.0 license.

Should you self-host SayIt?

SayIt scores 48/100 on selfhost.directory (how scoring works) and ranks #5 of 11 in Voice Assistants. It has 456 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v0.2.3, came out on 19 October 2026. New versions land roughly every 5 days.

Setup is moderate: expect some configuration beyond a single command. It is AGPL-3.0-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is AnythingLLM (88/100, 67 666 stars). It scores higher overall, so compare the two before you pick. See SayIt vs AnythingLLM side by side.

Features

  • AI text cleanup
  • Context-aware writingOff by default
  • Hotwords support
  • Local GGUF models
  • Local history and re-transcription
  • Multi-language UI
  • Multiple recognition modes
  • Overlay feedback
  • Per-app cleanup rules
  • Self-hosted server
  • Voice typing anywhere

SayIt README

How to install SayIt

Install SayIt with Docker Compose

git clone https://github.com/crosswk/SayIt.git
cd SayIt/server
cp config.example.yaml config.yaml
cp .env.example .env
# Add your provider and deployment settings to .env/config.yaml
docker compose up -d --build

Self-hosted backend server deployment

SayIt releases & version history

FAQ

Can I use my own AI cleanup prompts?

Yes, every built-in preset is editable and you can write your own prompts from scratch for commit messages, translation, email tone, etc.

What are the hardware requirements for the self-hosted server?

GPU speech recognition requires an NVIDIA GPU; 16 GB or more of VRAM is recommended for the default server model.

Can I self-host the SayIt server?

Yes, the server is open source and can be deployed via Docker Compose on your own infrastructure. The team shares one server and audio/text never leaves your network.

What speech recognition models are supported?

Local mode includes Parakeet Unified EN, SenseVoice Small, Fun-ASR Nano, Nemotron 3.5 ASR, and three Qwen3-ASR sizes. Cloud mode supports Doubao, Qwen, OpenAI, Gemini, OpenRouter, Xiaomi MiMo, Groq Whisper, and any OpenAI-compatible endpoint.

How does SayIt handle privacy?

In Local mode with AI cleanup off, nothing leaves your device. In Cloud API mode, audio goes directly to your chosen provider. In Server mode, audio goes to your self-hosted server.

More in Voice Assistants

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…