cimpress-translations-cli is a convenient client for Cimpress' Translations service which can very easily be integrated into an existing build pipeline to automatically download latest translations for an application.
Include cimpress-translations-cli in your project using npm or yarn:
npm i -D cimpress-translations-cli
-V, --version output the version number
-a, --application-id <id> Cimpress Translation Application ID (as defined in https://translations.cimpress.io
-c, --client-id <id> Auth0 Client ID that suppors clients_grant.
-s, --client-secret <secret> Auth0 Client Secret for the client id.
-t, --translations-file <filepath> File where a single file with all languages is created.
-h, --help output usage information
--iso639_1 Produce language file with 2-letter language codes (eg.: en, de, fr, ...).
The commands below assume (for simplicity) that you have APP_ID, CLIENT_ID and CLIENT_SECRET set as environment variables. ``
node ./node_modules/.bin/cimpress-translations-cli -a ${APP_ID} -c ${CLIENT_ID} -s ${CLIENT_SECRET} -t "./src/locales/translations.json"
...
scripts: {
...
"translate": "cimpress-translations-cli -a ${APP_ID} -c ${CLIENT_ID} -s ${CLIENT_SECRET} -t "./src/locales/translations.json",
...
},
...
- Retrieve access token for CLIENT_ID/CLIENT_SECRET
- Retrieve application description (including list of languages) from Cimpress Translaions service for application with id APP_ID
- For each application language from 2), download the language blobs
- Combine the language blobs into a single json
- Save the combined language files in the translations file (specified with
-t
option)