CLI tool

Localization
stays in
your repo.

A local-first CLI for iOS and Android localization. Canonical JSON source, native file sync, and AI-assisted translation — no hosted backend.

Pre-release. Review diffs carefully and test on a throwaway branch before using in production.

What it does

Built for devs shipping native apps.

01

Canonical source in git

Own one source of truth under l10n/ instead of scattering copy edits across platform files. Full version control, no backend required.

02

Native iOS & Android sync

Generate and maintain .xcstrings, Localizable.strings, and Android strings.xml from the same managed state — always in lockstep.

03

Local AI translation

Run translations through a local Codex CLI session. Missing strings get filled in; reviewed edits are preserved and never overwritten.

Typical flow

Four commands.
All platforms in sync.

1
leanl10n init

Scaffold the l10n/ directory with a canonical source.en.json and config file.

2
leanl10n sync

Detect new keys, translate missing strings locally, and write updated native resource files.

3
leanl10n check

Validate all keys are translated and no reviewed edits have drifted — ideal for CI.

4
git commit -m 'chore: l10n sync'

Everything lives in version control. No external state, no surprises.

l10n/ — project structure
l10n/
source.en.jsonsource of truth
translations.fr.json
translations.de.json
translations.ja.json
l10n.config.json
ios/
Localizable.xcstringsauto-generated
android/res/
values/strings.xmlauto-generated
values-fr/strings.xml