In an effort to create a more consistent experience for Habitica players, we have begun narrowing the focus of the translation projects. We’ve selected 29 languages to support across each platform. Any languages removed during this process will be archived on our GitHub repository.

Supported languages: English, English (UK), Bulgarian, Chinese (Simplified), Chinese (Traditional), Croatian, Czech, Danish, Dutch, French, German, Hebrew, Hungarian, Indonesian, Italian, Japanese, Korean, Polish, Portuguese, Portuguese (Brazil), Romanian, Russian, Serbian, Slovak, Spanish, Spanish (Latin American), Swedish, Turkish, Ukrainian.

Overview

Project website github.com/habitRPG/habitica
Instructions for translators

Habitica’s translations are done by our community of contributors from around the world!

Are you fluent in a language and want to contribute? Here are some instructions and common questions to introduce you to Habitica’s community translation process.


How is Habitica’s text translated?
As an open-source app, Habitica hosts our translations publicly here, at translate.habitica.com which is where contributors can submit, discuss, and review translations.

Translatable text is called a string. Source strings are provided in English, uploaded to translate.habitica.com, then translated into different languages for web, Android, and iOS by contributors. Approved translations will populate to the platforms they were submitted to after periodic updates by the Habitica team. This usually happens about once a month for the web version, or alongside mobile milestone releases for Android and iOS.


How do I contribute translations?

  1. Create an account on translate.habitica.com
  2. Choose a Project (web, Android, iOS), a language, and a Component (section of the app)
  3. To view strings that need translation, select one of the red string categories such as “Untranslated Strings”
  4. Navigate between strings with the arrow buttons to find a source string you want to translate
  5. Type your translation then save for someone to review. This may take some time as reviewers are contributors just like you

The translation platform we use, Weblate, also has more in depth guidance on how to use the platform in their documentation.


How do translations stay consistent?
We have a glossary of standard translations to reference. When you view a string, look to the right column to reference corresponding words from the language’s glossary.


How do I change a translation that’s already been reviewed?
When you have an idea for a better translation for a reviewed string, provide your translation then hit "Suggest".


What are the symbols I see in translatable text?
Words between <% %> symbols are variables used to insert information from the code. These variables shouldn’t be translated or edited in any way. You can translate everything around the variable and shift its position to fit your language’s grammar. When translating a string that has this, we recommend copy and pasting the code into your translation, as mistyping a letter or symbol can cause issues in the app.


How do I collaborate with other translators?
You can start discussions on the translation website from the “Comments” tab under each string. Alternatively, you can work with other translators through Habitica in Guilds, direct messages, and Party chat, or connect in unofficial spaces outside of Habitica.


Who do I contact if I’m having issues with the translation site?
Technical issues with translate.habitica.com can be reported to <admin@habitica.com>.


I don’t see my language listed for all platforms, or at all?
We do our best to support as many languages as we can, but since we are a very small team you may find a particular language isn’t offered. As of now, we aren’t planning to support additional languages. Languages that are partially translated now may become available within Habitica when it reaches a high percentage of strings translated.


What role does the Habitica team play in translation?
Our small team of seven aren’t experts on every language, but we do create the source English strings. We evaluate contributor tiers and appoint language reviewers based on past contributions. Source strings may change from time to time as we adjust the experience of an existing feature or add new features. While we don’t play an active role in each language’s translations, we can step in if necessary to help resolve disagreements.


How are contributor tiers awarded for translation?
After submitting translations for Habitica, you may get a contributor tier to acknowledge your help! Tiers change the color of your display name, add a badge after your name in messages, award you Gems, and display in the Hall of Heroes.

Tiers for help with translation are awarded:

  • After your first substantive contribution
  • After 1, 3, 6 months, and 1 year of contributions
  • Later tiers may be offered for 2+ years of contributions

If you meet these conditions, complete the Translation Badge Application form to let us know about your contribution. Tier requests are usually processed once every month and are awarded at the Habitica team’s discretion based on translation quality, complexity, and time spent.


How do I become a reviewer for my language?
In order to become a reviewer, you should:

  • Have 2+ translation tiers for the language you want to review
  • Know how to use our translation website’s functions efficiently
  • Work well with others and be open to discussion
  • Follow official guidance and respect language-specific best practices

If you meet these conditions, complete the Translation Reviewer Application form and reach out to us at <admin@habitica.com> to let us know you’d like to become a reviewer for a specific language. After reviewing, a member of our team will reach out to you with our decision.


Most important of all, have fun! These translations make Habitica accessible to a wider variety of people and we're extremely thankful for that. Habitica helps players improve their lives every day and we hope offering more languages will help even more people achieve their goals.


Project maintainers User avatar beffymaroo User avatar SabreCat User avatar saraolson User avatar eilatan
Translation process
  • Translations can be made directly.
  • Translation suggestions can be made.
  • Any authenticated user can contribute.
  • The translation uses monolingual files.
  • The translation base language can not be edited.
Translation license Proprietary
Source code repository git@github.com:HabitRPG/habitica.git
Repository branch develop
Last remote commit 5.12.2 4b9a5472bd
User avatar SabreCat authored 5 days ago
Last commit in Weblate Translated using Weblate (Ukrainian) aa729af1d6
Weblate authored 9 days ago
Weblate repository https://translate.habitica.com/git/habitica/settings/
File mask website/common/locales/*/subscriber.json
Monolingual base language file website/common/locales/en/subscriber.json
Translation file Download website/common/locales/bg/subscriber.json
Last change May 31, 2023, 7:06 a.m.
Last author None

String statistics

Strings percent Hosted strings Words percent Hosted words Characters percent Hosted characters
Total 226 1,242 7,729
Approved 0% 0 0% 0 0% 0
Waiting for review 70% 159 68% 848 67% 5,207
Translated 70% 159 68% 848 67% 5,207
Needs editing 2% 5 3% 38 3% 239
Read-only 0% 0 0% 0 0% 0
Failing checks 2% 5 3% 38 3% 239
Strings with suggestions 0% 0 0% 0 0% 0
Untranslated strings 27% 62 28% 356 29% 2,283

Quick numbers

1,242
Hosted words
226
Hosted strings
70%
Translated
1
Contributors
and previous 30 days

Trends of last 30 days

+1%
Hosted words
+1%
+1%
Hosted strings
+1%
−1%
Translated
−1%
Contributors
−100%
User avatar None

New string to translate

Habitica / SubscriberBulgarian

1 new string to translate appeared in the translation. 13 days ago
User avatar None

Resource update

Habitica / SubscriberBulgarian

The "website/common/locales/en/subscriber.json" file was changed. 13 days ago
User avatar None

String updated in the repository

Habitica / SubscriberBulgarian

 
13 days ago
User avatar None

New string to translate

Habitica / SubscriberBulgarian

1 new string to translate appeared in the translation. 3 weeks ago
User avatar None

Resource update

Habitica / SubscriberBulgarian

The "website/common/locales/en/subscriber.json" file was changed. 3 weeks ago
User avatar None

String updated in the repository

Habitica / SubscriberBulgarian

 
3 weeks ago
User avatar None

New string to translate

Habitica / SubscriberBulgarian

1 new string to translate appeared in the translation. a month ago
User avatar None

Resource update

Habitica / SubscriberBulgarian

The "website/common/locales/en/subscriber.json" file was changed. a month ago
User avatar None

String updated in the repository

Habitica / SubscriberBulgarian

 
a month ago
User avatar SabreCat

New string to translate

Habitica / SubscriberBulgarian

1 new string to translate appeared in the translation. 2 months ago
Browse all translation changes