Skip to content

Internationalization

Cloudron supports translation of the dashboard and transactional emails like the Welcome email and Password reset.

Cloudron supports the following languages:

  • Chinese (Simplified)
  • Dutch
  • English
  • French
  • German
  • Italian
  • Spanish
  • Vietnamese

Translations into other languages are work in progress and we are happy to accept contributions from the community.

Maintaining translations

Translations are maintained in a Weblate instance at https://translate.cloudron.io. All translations are public and interested users can view translated strings. If users want to contribute please send us an email to support@cloudron.io with the intended username and language to contribute to and we will send you an invite.

Language maintainer

To ensure consistency across the translated terms and have a way to make decisions on proposed translations, we are looking for one maintainer for each language. The Cloudron team itself only natively speaks English and German, so for any other language we will rely on community members. In case you want to help us maintain a language, please first reach out to us at support@cloudron.io for a Weblate account and we can grant you permissions to maintain the corresponding language.

Testing

The cloudron-translate-update CLI tool fetches and updates translations from Weblate. This tool is already installed on Cloudron.

The following command will download translation files for all languages and updates those in the Cloudron installation:

sudo cloudron-translation-update

Once you have run the command, visit the Cloudron dashboard and reload the page. New languages can be activated immediately from the profile or settings view.

Workflow

Adding or improving individual translation strings all happens inside Weblate. If a translation in a language is missing, one can search for the English string in Weblate and it will show all languages with the current existing or non-existing translation. Simply propose a translation in the tool and the language maintainer will accept it. Once accepted, it can be tested as explained in the previous section.