readme.md

May 2, 2025 · View on GitHub

Lingo.dev – localization engineering platform

Open-source localization engineering tools. Connect to Lingo.dev localization engineering platform for consistent, quality translations.


Lingo APILingo React MCPLingo CLILingo GitHub ActionLingo Compiler for React (Early alpha)

Release License Last Commit Product Hunt #1 DevTool of the Month Product Hunt #1 DevTool of the Week Product Hunt #2 Product of the Day Github trending


Quick Start

ToolWhat it doesQuick Command
Lingo React MCPAI-assisted i18n setup for React appsPrompt: Set up i18n
Lingo CLILocalize JSON, YAML, markdown, CSV, PO filesnpx lingo.dev@latest run
Lingo GitHub ActionContinuous localization in GitHub Actionsuses: lingodotdev/lingo.dev@main
Lingo Compiler for ReactBuild-time React localization without i18n wrapperswithLingo() plugin

Localization engines

These tools connect to localization engines – stateful translation APIs you create on the Lingo.dev localization engineering platform. Each engine persists glossaries, brand voice, and per-locale instructions across every request, reducing terminology errors 16.6–44.6%. Or bring your own LLM.


Lingo.dev MCP

Setting up i18n in React apps is error-prone – even AI coding assistants hallucinate non-existent APIs and break routing. Lingo.dev MCP gives AI assistants structured access to framework-specific i18n knowledge for Next.js, React Router, and TanStack Start. Works with Claude Code, Cursor, GitHub Copilot Agents, and Codex.

Read the docs →


Lingo.dev CLI

Localize JSON, YAML, markdown, CSV, and PO files in one command. A lockfile tracks what's already localized – only new or changed content gets processed. Defaults to your localization engine on Lingo.dev, or bring your own LLM (OpenAI, Anthropic, Google, Mistral, OpenRouter, Ollama).

npx lingo.dev@latest init
npx lingo.dev@latest run

Read the docs →


Lingo.dev CI/CD

Continuous localization in your pipeline. Every push triggers localization – missing strings get filled before code reaches production. Supports GitHub Actions, GitLab CI/CD, and Bitbucket Pipelines.

uses: lingodotdev/lingo.dev@main
with:
  api-key: ${{ secrets.LINGODOTDEV_API_KEY }}

Read the docs →


Lingo.dev API

Call your localization engine directly from backend code. Synchronous and async localization with webhook delivery, failure isolation per locale, and real-time progress via WebSocket.

Read the docs →


Lingo Compiler for React (Early alpha)

Build-time React localization without i18n wrappers. Write components with plain English text – the compiler detects translatable strings and generates localized variants at build time. No translation keys, no JSON files, no t() functions. Supports Next.js (App Router) and Vite + React.

Read the docs →


Contributing

Contributions welcome. Please follow these guidelines:

  1. Issues: Report bugs or request features
  2. Pull Requests: Submit changes
    • Every PR requires a changeset: pnpm new (or pnpm new:empty for non-release changes)
    • Ensure tests pass before submitting
  3. Development: This is a pnpm + turborepo monorepo
    • Install dependencies: pnpm install
    • Run tests: pnpm test
    • Build: pnpm build

Support: Discord community

Star History

If you find Lingo.dev useful, give us a star and help us reach 10,000 stars!

Star History Chart

Localized Documentation

Available translations:

English中文日本語한국어EspañolFrançaisРусскийУкраїнськаDeutschItalianoالعربيةעבריתहिन्दीPortuguês (Brasil)বাংলাفارسیPolskiTürkçeاردوभोजपुरीঅসমীয়াગુજરાતીमराठीଓଡ଼ିଆਪੰਜਾਬੀසිංහලதமிழ்తెలుగు

Adding a new language:

  1. Add locale code to i18n.json using BCP-47 format
  2. Submit a pull request