# Contribute Translations

How to add or update translations for Super Productivity.

Translations are JSON files in `src/assets/i18n/` (e.g. `de.json`, `fr.json`). English (`en.json`) is the fallback: missing or empty values show the English text.

## Steps

1. Open the language file in `src/assets/i18n/` for your locale.
2. Edit string values only. Keep the same nested structure and SCREAMING_SNAKE_CASE keys.
3. Leave a key as `""` if you want the English fallback; do not copy English text into empty strings unless you are providing a real translation.
4. Run the app locally ([[2.11-Run-the-Development-Server]]) and check the UI.
5. Submit a pull request with the changed JSON file(s).

## Format and Conventions

- Nested JSON; only change the string values, not keys or structure.
- Prefer short, clear text (UI space is limited).
- Use `en.json` as the reference for context and key names.

## Translation Tooling

For finding missing keys and keeping files in sync, use the script described in the repo:

**[docs/i18n-script-usage.md](https://github.com/super-productivity/super-productivity/blob/master/docs/i18n-script-usage.md)** (and `tools/add-missing-i18n-variables.js`).

Full contributor notes: [docs/TRANSLATING.md](https://github.com/super-productivity/super-productivity/blob/master/docs/TRANSLATING.md).

## Related

- [[2.11-Run-the-Development-Server]]
