Every locale, reviewed and shipped, without babysitting a script.
Drop a folder of catalogs, see what it’ll cost before it runs, watch it work, review only what needs a human, and download translations that drop straight into your repo.
A folder of files in. Reviewed catalogs out.
Drop a folder
Drag in a folder of .po files. Each target locale is read from the file’s Language: header, you never type locale codes, and the source is skipped automatically.
Language: headerSee the cost first
Before anything runs, you see entries, words and an estimated cost for the quality you picked. This is the moment that removes the doubt. Approve it, and not a word is charged you didn’t agree to.
cost preview · before you commitwithin balanceWatch it run
The job streams progress per locale, chunk by chunk, no refreshing, no wondering. Cancel any time; finished locales are ready as they land.
Review the misses
Every entry is checked for placeholder and markup integrity. Anything that fails is flagged, not shipped. You review just those and re-run them in a click. Partial success is normal, not a failure.
Willkommen, %1$s, placeholders intact#, el-review, dropped {{code}}Download, repo-shaped
Pull a zip that mirrors your input tree, one valid .po per locale. Unzip over locale/, read the diff, merge. It just drops in.
messages.zip · shaped like your repolocale/ ├─ de/LC_MESSAGES/messages.po ✓ valid gettext ├─ fr/LC_MESSAGES/messages.po ✓ ├─ ar/LC_MESSAGES/messages.po ✓ 6 plural forms └─ pt-BR/LC_MESSAGES/messages.po ✓ # unzip over locale/ and read the diff
Prefer your editor and terminal? The same loop runs headless with @echo-lingua/i18n-cli and @echo-lingua/sdk, no browser in the way. See the packages →
It translates like it knows your product.
Context modes
Tell it whether a string is a UI label, marketing copy or documentation, the tone follows. Set it per job, or override per entry.
Your glossary, kept verbatim
Brand names, product terms and do-not-translate words come through exactly as written, every locale, every time.
Dialects done right
pt-BR and pt-PT come back correctly different, vocabulary and plural rules, instead of one flattened “Portuguese”.
One balance, departments, and caps you set.
Everyone on your team draws from a single balance you control, with per-department spend caps, per-member attribution, and control over who sees whose jobs.
Give your next locale drop a try.
Drop a folder, read the cost preview, review the result. Your first month’s standing charge is on us.
Start free