Placeholders
A renamed or dropped placeholder shows raw braces to users, or crashes the formatter.
Open-source QA gate · no account
Placeholders, ICU plurals, tags, missing keys and glossary terms, checked in CI across 13 file formats. The gate reads your files where they are and sends nothing anywhere.
npx shipglot checkHosted AI translation: free up to 500 keys, then from $12 a month, prepaid. It is not open yet; the gate works today.
messages/fr/common.json 2:12 error fr title placeholder mismatch: missing {name}; unexpected {nom} 4:12 error fr terms markup mismatch: missing <link>, </link> messages/pl/common.json 3:12 error pl items plural {count} is missing categories few, many required by pl 3 errors, 0 warnings, 1 info (hidden; use --verbose) in 3 files, 3 source keys, 2 target locales.
shipglot check exits with code 1.A renamed or dropped placeholder shows raw braces to users, or crashes the formatter.
CLDR categories for every locale, gettext Plural-Forms headers and Laravel pipe rules.
Lost, renamed or unbalanced tags, changed link targets, and added attributes such as onclick.
Keys a locale lacks, and keys left behind after the source renamed or deleted them.
Approved terms used for each locale. Brand names kept as written, with grammatical endings allowed where a language declines them.
A committed shipglot.lock flags translations whose source text changed after they were done.
Hosted translation · not open yet
Models are chosen per language group by our model test battery, each with a fallback on another provider. Every string gets a decision log. Included in the price: one full pass over your keys into each target language every month. Prepaid credits beyond that.
$ npx shipglot translate
Per month, charged upfront. Annual billing: two months free. Unlimited seats, languages and projects. Public open-source repositories: free, with a README badge.