Local-first translation and spellchecking powered by Ollama. Your text is processed by your own local model and does not require cloud APIs or API keys.
- Private by default: inference runs against your configured Ollama instance
- Two focused workflows in one UI:
Translatefor bilingual translation andSpellcheckfor spelling, grammar, and punctuation correction - Streaming model output for responsive feedback
- Auto-run after typing pause (800 ms debounce), plus manual action buttons
- Model + endpoint settings persisted in
localStorage - Works on desktop and mobile layouts
- Node.js 18+
- pnpm
- Ollama installed and running (default:
http://localhost:11434) - At least one local model pulled in Ollama
Example:
ollama pull translategemma:4b
# or mistral / gemma3 / qwen2.5 etc.git clone https://github.com/svcho/LocalLingo.git
cd LocalLingo
pnpm install
pnpm devOpen http://localhost:3000.
- Select source and target languages.
- Type or paste text in the left pane.
- Translation streams into the right pane automatically after a short pause.
- Optional controls:
Translateto run immediately,Swapto swap languages and reuse output, andCopyto copy translated text.
- Switch to
Spellcheck. - Paste or type text in the input pane.
- Corrected text appears in the output pane (auto-check + manual
Spellcheckbutton). - Optional controls:
Replace Inputto continue editing from corrected text andCopyto copy corrected text.
- LocalLingo only sends text to your configured Ollama URL.
- If you point to a remote Ollama host, privacy depends on that host/network.
- Model outputs can be wrong or stylistically imperfect. Review important text before use.
Click the status pill in the header to open settings:
- Set Ollama URL
- Test connection
- Choose the active model
English, Spanish, French, German, Italian, Portuguese, Chinese (Simplified), Chinese (Traditional), Japanese, Korean, Russian, Arabic, Hindi, Dutch, Swedish, Polish, Turkish, Vietnamese, Thai, Indonesian.
pnpm build
pnpm start- Next.js 16 (App Router)
- React 19 + TypeScript 5
- Tailwind CSS v4
- Ollama local models
app/
api/ollama/
tags/route.ts
generate/route.ts
layout.tsx
page.tsx
components/
Header.tsx
SettingsModal.tsx
SpellcheckPane.tsx
TranslationPane.tsx
CopyButton.tsx
context/
SettingsContext.tsx
hooks/
useOllamaGeneration.ts
useTranslation.ts
useSpellcheck.ts
MIT