Documentation
Commands
translate, update, lint, and auth.
translate
Translates every string in the source file. Use this to create translations that do not exist yet.
# using the config file
parlancekit translate
# explicit, multiple languages
parlancekit translate --input en.json --langs es,fr,de
# single language, exact output path
parlancekit translate --input en.json --langs es --output es.json
# preview only
parlancekit translate --dry-runupdate
Compares your source against an existing translation and sends only the missing or changed strings. Your existing translations are never overwritten, and you are only billed for what is new.
parlancekit update --input en.json --langs es,fr --pattern locales/{lang}.json
# single language, explicit target
parlancekit update --input en.json --langs es --target es.jsonupdate only touches languages that already have a translation file. A language with no target file is skipped and reported — use translate to create it first.
lint
Checks a localization file for missing or empty strings, duplicate keys, invalid format specifiers, and encoding problems. Output as text or JSON, which makes it easy to fail a CI build on errors.
parlancekit lint --input en.json
parlancekit lint --input en.json --format jsonauth
Stores your API key locally. Run once per machine. In CI, run it as a step before any translate command.
parlancekit auth sk-pk-your-keyShared flags
| Flag | Description |
|---|---|
| --input, -i | Source file. Overrides sourceFile. |
| --langs | Comma-separated target languages. |
| --tone, -t | Tone of voice. |
| --formality | default, formal, or informal. |
| --glossary, -g | Comma-separated terms never to translate. |
| --pattern, -p | Target path pattern using {lang}. |
| --output, -o | Exact output path. Single language only. |
| --skip-keys | Comma-separated key patterns to skip. |
| --preserve-values | Comma-separated values to preserve exactly. |
| --config, -c | Path to a config file other than ./parlancekit.config.json. |
| --dry-run | Print the plan and exit. Writes nothing, calls nothing. |
| --force | Overwrite output files without asking. |
--lang (singular) is deprecated. Use --langs, which accepts one or many.