Localization desk for shipping software

Ship the other languages before the release branch cools.

LocaleDrop translates a JSON file, an Apple string catalog, Android strings.xml, or a gettext PO. Placeholders stay put. You get a ZIP in the original shape. $3 a file. No account.

en.json → de, ja2 credits
KeyGerman
home.titleFinde den Weg vor Sonnenuntergang
home.subtitleOffline-Karten für {name}
trails.saved<b>{count}</b> Routen gespeichert

The highlighted tokens are masked before translation and checked afterward. A mismatch is retried, then the source string is kept.

JSON

Nested i18n objects and string arrays, flattened to stable keys.

Apple .strings

Quoted keys, comments, and escapes, written back in the same order.

Apple .xcstrings

String catalogs, including plural variations, merged into one file.

Android XML

strings, plurals, and string-arrays, with values-xx folders.

gettext .po

Headers, comments, and plural messages. msgstr is what changes.

How a file moves

01

Drop the source file

The format is detected from the name and the contents. Keys are flattened for the table, then put back.

02

Pick the languages

Add a previous translation if you have one. Unchanged keys are copied. You pay only for languages that have new or changed strings.

03

Edit, then download the ZIP

Placeholders, ICU plurals, and tags are masked before the model sees them, then checked. A mismatch is retried, and a stubborn string stays in the source language with a warning.

Diff mode

Upload the previous source and the translation you already shipped. Keys whose source text is unchanged keep the old translation. A language with nothing new does not spend a credit. Without the previous source, existing keys are kept and only missing keys are translated.

From the terminal

npx localedrop push en.json --to de,fr,ja

Buy an API key on the site. The same key works in the browser and in CI. One credit is one output file.

$3 a file

A file is one source translated into one language. German, French, and Japanese are three credits. Stripe may add tax at card checkout when Managed Payments is on.

Payment methods and packs

Single file

$3.00

1 credit · One source file, one language.

Ten files

$30.00

10 credits · A short release, still $3 a file.

Forty files

$120.00

40 credits · A full pass at the same rate.