🎉 v1.0

Get started

  • Welcome
  • Documentation
  • Pricing
    Soon

Tools

  • I18n MCP
  • CLI
  • CI/CD Integrations
  • Compiler
    Alpha
  • Connect Your Engine

Resources

  • Languages
  • LLM Models
  • Guides

Company

  • Enterprise
  • CareersHiring!
Dashboard

Continuous Localization

  • How it works
  • Setup
  • Advanced patterns

Platforms

  • GitHub
  • BitBucket
  • GitLab

Setup

Max PrilutskiyMax Prilutskiy·Updated 1 day ago·2 min read

Set up continuous localization in your CI/CD pipeline in three steps: configure the CLI, add your API key, and choose a workflow.

Prerequisites

You need a working CLI setup with an i18n.json file and the ability to run npx lingo.dev@latest run locally before adding CI/CD.

Step 1. Configure the CLI#

If you haven't already, follow the CLI Setup guide. You should end up with:

  • An i18n.json file in your project root
  • An API key (either LINGO_API_KEY for Lingo.dev Engine or a provider key like OPENAI_API_KEY)
  • The ability to generate translations locally with npx lingo.dev@latest run

Step 2. Add your API key as a CI secret#

Store your API key in your CI platform's secret management:

  1. Navigate to Settings > Secrets and variables > Actions
  2. Click New repository secret
  3. Name: LINGODOTDEV_API_KEY, Value: your API key
  4. Click Add secret

Step 3. Choose a workflow and add the config#

Pick the workflow that fits your team, then follow the platform-specific guide:

WorkflowBest for
Commit to mainSmall teams that want zero-friction, invisible translation updates
PR from mainTeams that want to review translations before they land on main
Commit to feature branchTeams with long-lived feature branches
PR from feature branchTeams that want maximum control over every translation change

Not sure which to pick? Start with "Commit to main" - it's the simplest. You can switch later without changing your i18n.json.

For platform-specific setup instructions and workflow examples, see:

GitHub Actions
Official GitHub Action with workflow examples
GitLab CI/CD
Docker image with pipeline examples
Bitbucket Pipelines
Official Pipe with workflow examples

Verify the setup#

After configuring your CI workflow, push a change to trigger it. The integration should:

  1. Run the translation pipeline
  2. Commit translations or open a PR (depending on your workflow)
  3. Update the i18n.lock file

To verify translations are complete in CI without generating new ones, use the --frozen flag:

bash
npx lingo.dev@latest run --frozen

This exits with a non-zero status if any content is untranslated - useful as a deployment gate. See Advanced Patterns for examples.

Next Steps#

GitHub Actions
Set up the official GitHub Action
Advanced Patterns
Translation checks, merge conflicts, workflow selection
How It Works
The CI/CD localization pipeline
Connect Your Engine
Route CI/CD translations through your engine

Was this page helpful?