Using crowdin

It is recommended to use Crowdin for doing translations using the following link https://crowdin.com/project/amethyst-player

Manual localization

First Step

Follow the cloning procedure stated in Development

Second Step

Navigate to src/renderer/locales

Third Step

Find or create a JSON file for the locale you want to localize for are instructions or content that only pertain to the third step.

All locales should be named in the IETF Language Tag format such as en-US.json

Advice

It is expected that certain terminology only makes sense in English, for that reason when localizing try to maintain coherence of meaning in your language even if requires indirect translations or rephrasing

Testing

All locales should be in the src/renderer/locales folder

Amethyst will automatically load and show the locales on the dropdown menu under Settings > Application

Synchronizing keys

When updating a locale you might find that there will be missing keys, that happens due to development changes in en-US.json since that is the main language Amethyst falls back on

To add the missing keys from en-US.json run the following command:

yarn gen:locales
This command will update all the locales