Managing translations (i18n)

The workflow

Decidim uses Crowdin to manage the translations.

Adding a new language

  • Setup the new language in Crowdin’s Decidim project (or open an issue on GitHub asking an admin to do that).

  • Add the locale mapping in the crowdin.yml file

  • Translate at least one key from every engine, so, your yaml files are not empty. The easiest way to do this is to automatically translate and sync all the content. Later you will be able to fix the content that was not properly translated.

  • Add the new language to available_locales (PR).

  • Add the language in decidim-core/spec/lib/available_locales_spec.rb.

Test the new language

  • Generate the development app and cd into it.

  • Change the config/initializer/decidim.rb file and add your locale to Decidim.available_locales.

  • rake db:drop db:setup to drop, create, load schema and seed the DB.