Lingo.dev + .txt (Plain Text)

Lingo.dev CLI brings seamless translation to plain text files—ideal for fastlane metadata, app store descriptions, and any line-based text. Each line is treated as a separate translatable unit, preserving file structure and spacing automatically.

Quick Setup

Add text file support to your i18n.json config:

{
  "locale": {
    "source": "en",
    "targets": ["es", "fr", "de"]
  },
  "buckets": {
    "txt": {
      "include": ["metadata/[locale]/*.txt"]
    }
  }
}

Tip: [locale] is a literal placeholder—Lingo.dev replaces it with the actual locale during CLI runs.

Translate All Text Files

npx lingo.dev@latest i18n

Each line in your text file becomes a separate translation key, enabling efficient, line-by-line translation and chunking for large files.

Structure Preservation

  • Empty lines: Automatically filtered out during extraction and restored after translation, so your file's spacing stays intact.
  • Large files: Efficiently chunked at the line level—no more LLM token overflows.
  • Unlocalizable content: Lines without localizable content (eg. numbers, dates, URLs) are skipped and reserved.

Advanced Configuration

Exclude Files

"txt": {
  "include": ["metadata/[locale]/*.txt"],
  "exclude": ["metadata/[locale]/README.txt"]
}