Privacy-first AI translation that runs entirely on your machine
Features • Quick Start • Installation • Usage
|
Karpa is a privacy-first AI translator that runs entirely on your machine. Your data never leaves your device — no cloud, no tracking, no compromises.
Supports LM Studio, Ollama, OpenAI, Anthropic, Google Gemini, and OpenRouter.
| Feature | Description |
|---|---|
| Complete Privacy | All translations happen locally. No data is ever sent to external servers. |
| Multi-Language Support | Translate between 12+ languages including English, Turkish, Spanish, French, German, Italian, Portuguese, Russian, Japanese, Chinese, Korean, and Arabic. |
| Text & File Translation | Translate plain text or upload files (.txt, .md, .json, .csv, .srt, and more). |
| Translation Tones | Choose from Standard, Formal, Casual, or Technical tones to match your context. |
| History & Favorites | Automatically save your translation history and star your favorite translations. |
| Beautiful UI | Modern, responsive design with dark mode support and smooth animations. |
| Text-to-Speech | Listen to translations with built-in TTS support for multiple languages. |
Pick one of the supported providers:
- LM Studio — Download, load a model, and start the local server
- Ollama — Download and pull a model
- OpenAI / Anthropic / Google Gemini / OpenRouter — Create an account and get an API key
git clone https://github.com/sudoeren/karpa.git && cd karpa
docker compose up -dOpen http://localhost:7250 and start translating!
git clone https://github.com/sudoeren/karpa.git
cd karpa
npm install
npm run devgit clone https://github.com/sudoeren/karpa.git
cd karpa
docker-compose up -ddocker run -p 7250:7250 ghcr.io/sudoeren/karpa:latestFor local LLM providers (LM Studio, Ollama), add the host gateway:
docker run -p 7250:7250 --add-host=host.docker.internal:host-gateway ghcr.io/sudoeren/karpa:latest- Select source language (or Auto Detect)
- Select target language
- Choose translation tone (optional)
- Enter text
- Press
Ctrl+Enteror click Translate
- Switch to File mode
- Upload a text file
- Select target language
- Click Translate
- Download the translated file
| Shortcut | Action |
|---|---|
Ctrl+Enter |
Translate |
Ctrl+C |
Copy translation |
Run the script inside the karpa folder:
./uninstall.sh # macOS / Linux
uninstall.bat # WindowsThis stops the container, removes the image and volumes, and deletes the project folder.
Clear browser data (history, settings, API key) manually from Settings → Data.
karpa/
├── src/
│ ├── app/ # Next.js App Router
│ │ ├── page.tsx # Main translator
│ │ ├── history/ # Translation history
│ │ ├── favorites/ # Saved translations
│ │ ├── settings/ # App settings
│ │ └── api/translate/ # Translation API
│ ├── components/ # React components
│ ├── contexts/ # React contexts
│ ├── hooks/ # Custom hooks
│ └── lib/ # Utilities
├── public/ # Static assets
├── Dockerfile # Docker config
└── docker-compose.yml # Docker Compose
MIT License — see LICENSE for details.

