Going to production

We already saw customers going from integrating locize to production in a few days. There should be a few things to take into consideration before pressing that button:

Your API key

Do not add your API key into your production build.

Anyone can take your API key from the code and start using the API to change your translations or adding new content on your cost.

Fetching the translations from our CDN, via locizify, i18next-locize-backend, etc... does not require to use an API key. Only if fetching private translations you need an API key. And for sure you need also an API key, if using the saveMissing, add or update functionality.

If you already leaked your API key to production best will be to remove that key immediately going to your locize project's setting page. Remove it from your codebase with the next deployment or your code.

Using saveMissing, add, update function

Using the feature to add new keys during development is meant to be only used during development. Using it in production can lead to spamming our endpoint with unneeded requests.

Using this on production can force us to start charging you for those saveMissing calls (which currently are free) or in worst case we will be forced to suspend your account.

By enabling this feature, make sure the publish mode for the requested version is set to auto publish, to prevent 412 errors.

modulewhat to do

i18next

set saveMissing, updateMissing to false on i18next.init (default)

locizer

do not use functions: locizer.add, locizer.update, locizer.used

locizify

set saveMissing, updateMissing to false on init (default)

Using last used function

Using the locize-lastused module or the used api endpoint is meant to be only used during development. Using it in production can lead to spamming our endpoint with unneeded requests.

Use the locize CDN

Loading translations from the CDN has some significant advantages over loading them from your own server. If you're forced to load them from your own server we would at least consider loading them from the CDN during development to get that realtime feedback.

1) Realtime update

Your changes done using the locize UI or API are immediately published to the CDN which means a huge timesaving during development.

2) Update without deployment

Your translators can fix typos or other mistakes in the content independent from the development. There is no need to download the translations updating your codebase and having to deploy it.

I want to use the locize CDN, but would like to have a fallback that uses local/bundled translations

Versions & Caching

If you decided to use the locize CDN in production there is one important tipp.

Create an additional version in the project settings. And enable caching on it.

This will improve load times on first request because the translations get cached on available edge locations bringing your translations closer to the users resulting in better latency. Further subsequent requests will be cached by the browser improving the experience even more.

Last updated