Open source · self-hosted

Your therapist has confidentiality.Now your chat app does too.

OvertChat is a complete chat client for hosted and local models, running on a server you own. Your account and chat history stay there; model requests go only to the endpoints you choose.

Fully offline-capable No usage analytics Native mobile app
Continue
Connects toOllamavLLMllama.cppHosted APIsAny OpenAI-compatible endpoint

How it works

Your server is the product.

OvertChat keeps your account, chat history, and files on your server. Model requests go directly to the local or hosted endpoints you configure—never through an OvertChat-operated relay or control plane.

01

Start your server

Run one Docker Compose command. OvertChat brings the app, SQLite database, resume buffer, web search, and text-to-speech.

02

Connect your models

Add a hosted provider or an OpenAI-compatible local endpoint. The setup wizard checks the connection before you begin.

03

Chat from anywhere

Use the responsive web app or connect the native mobile client to the server you control. Your account, chat history, and files stay on that server.

What’s in the box

The whole client, already wired up.

Fast, persistent chat

Streaming replies, resumable generations, editable messages, projects, and automatically titled history.

Useful search

Search the web through bundled SearXNG and find old conversations with SQLite FTS5—no vector database required.

Rich attachments

Work with images, PDFs, Word and Excel documents, CSV files, and source code directly in a conversation.

Voice, both ways

Bundled text-to-speech works out of the box. Optional local speech-to-text keeps dictation on your hardware.

Model flexibility

Native support for OpenAI, Anthropic, Google Gemini, and Amazon Bedrock, plus any OpenAI-compatible endpoint—hosted or on hardware you own.

Private by construction

No usage analytics, advertising SDK, or hosted account system. The server belongs to you.

Deliberately boring infrastructure

Easy to understand. Easier to keep.

There is no distributed services diagram hiding behind the chat box. Back up one database file, update one container image, and keep operating on your terms.

Read the deployment guide
  • One application process
  • One portable SQLite file
  • A small Redis resume buffer
  • No RAG or embeddings stack
  • No plugin runtime
  • No hosted control plane

On the web

Open it and get to work.

A responsive interface for long conversations, projects, files, web research, voice, and every model connected to your server.

Self-host the web app

On mobile

Your server, in your pocket.

The native client connects directly to your OvertChat instance. Chats and attachments stay on that server—not in a hosted mobile backend.

Get the Android app

Quick start

From clone to chat in one stack.

Docker and an LLM endpoint are the only real prerequisites. The first account becomes the administrator and the setup wizard handles the rest.

terminal
git clone https://github.com/yoloyash/overtchat
cd overtchat
cp .env.example .env
echo "BETTER_AUTH_SECRET=$(openssl rand -hex 32)" >> .env
echo "SEARXNG_SECRET=$(openssl rand -hex 32)" >> .env
docker compose up -d --build

Built in public

See what changed, without digging.

Web and mobile releases live in one chronological log, generated directly from the project’s GitHub Releases.

Browse releases