Lingo.dev

official

Make your AI agent speak every language on the planet, using Lingo.dev Localization Engine.

What can you do with Lingo Dev MCP?

  • Set up i18n in a React app — ask the AI to scaffold internationalization for Next.js, React Router, or TanStack Start using Lingo React MCP.
  • Localize content files via CLI — run npx lingo.dev@latest run to translate JSON, YAML, Markdown, CSV, or PO files with change-aware lockfile tracking.
  • Add continuous localization to CI/CD — configure the lingodotdev/lingo.dev@main GitHub Action to translate new strings on every push.
  • Call a localization engine from backend code — use the Lingo.dev API for synchronous or async translation with webhook delivery and per-locale failure isolation.

Documentation

Lingo.dev – localization engineering platform

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

Lingo API • Lingo React MCP • Lingo CLI • Lingo GitHub Action • Lingo 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ñol • Français • Русский • Українська • Deutsch • Italiano • العربية • עברית • हिन्दी • Português (Brasil) • বাংলা • فارسی • Polski • Türkçe • اردو • भोजपुरी • অসমীয়া • ગુજરાતી • मराठी • ଓଡ଼ିଆ • ਪੰਜਾਬੀ • සිංහල • தமிழ் • తెలుగు

Adding a new language:

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