Guide for translators - lukevella/rallly GitHub Wiki

Rallly is made available in different languages by volunteer translators. Translations can be submitted through crowdin. Submitting translations is super easy and doesn't require any coding skills.

Table of Contents

Getting Started

The first thing you need to do is create a crowdin account. Crowdin offers a user-friendly interface to submit translations. Once you have an account you can join the project here:

Once you've joined the project:

  1. Pick the language you'd like to translate
  2. Select a file (each file contains text for different parts of the site)
  3. Start translating!
CleanShot 2022-07-21 at 12 05 59@2x

Tips for translators

Here are a few things to keep in mind when translating.


Pay close attention to how phrases are punctuated.


If a sentence ends with a period (.) or a colon (:), you will want to include that in your translation.

❌ Nombre
✅ Nombre:


Variables are placeholders for content which can change. They look like this:

Hi {{name}}, welcome back!

{{name}} is a variable which will be replaced with the user's name. Please make sure variables remain unchanged when translating.

❌ Salut {{nom}}, bienvenue!
✅ Salut {{name}}, bienvenue!


Tags can be used to create a hyperlink or change the appearance of some text (ex. bold, italics etc…). They look like this:

Go to <a>page</a>

The tags should remain wrapped around the same content and should not be translated. The contents between the tags should be translated (unless they are a variable).

❌ Gehen Sie zur Seite
❌ <a>Gehen Sie zur Seite</a>
❌ Gehen Sie zur <a>page</a>
✅ Gehen Sie zur <a>Seite</a>


If you see a translation that contains a {{count}} variable, that is called a plural. To get the correct translation in your language, pay attention to the suffix of the translation key. The suffix _one or _other describes the value of {{count}} for that particular translation.

"participantCount_one": "{{count}} participant
"participantCount_other": "{{count}} participants

Other possible suffixes you might encounter are _zero, _two, _few, and _many. Even if your language doesn't require different definitions for all these keys, you should still repeat the correct translation that best describes that value.

"participantCount_zero": "{{count}} participants
"participantCount_one": "{{count}} participant
"participantCount_two": "{{count}} participants
"participantCount_few": "{{count}} participants
"participantCount_many": "{{count}} participants
"participantCount_other": "{{count}} participants


For languages that have different registers (informal vs. formal), the general advise is to use an informal register. However, there may be exceptions for certain languages so if you are not sure please reach out.


What if my language is already translated?

You should still join the Crowdin project. When new translations are added you will be notified to help translate them.

What if I don't see my language?

If you don't see your language in Crowdin and would like to submit translations please reach out.

How quickly will my translations get released?

Usually, this is done within a few hours of submitting your translations. This is because Crowdin will check for updates once every hour and the updates need to be manually approved.


If you have an questions you can reach out using one of the following methods:

⚠️ ** Fallback** ⚠️