Overview

Project website github.com/habitRPG/habitica-ios
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 SabreCat User avatar eilatan User avatar beffymaroo User avatar saraolson
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-ios.git
Repository branch develop
Last remote commit improve search handling 0348a3dd
User avatar phillip authored 8 days ago
Last commit in Weblate Translated using Weblate (Chinese (Simplified)) 9901cf27
Weblate authored 14 hours ago
Weblate repository https://translate.habitica.com/git/habitica-ios/main-strings/
File mask HabitRPG/Strings/*.lproj/Mainstrings.strings
Monolingual base language file HabitRPG/Strings/Base.lproj/Mainstrings.strings
Translation file Download HabitRPG/Strings/pt.lproj/Mainstrings.strings
Last change Dec. 2, 2024, 11:39 a.m.
Last author None

String statistics

Strings percent Hosted strings Words percent Hosted words Characters percent Hosted characters
Total 1,397 8,432 47,611
Approved 0% 0 0% 0 0% 0
Waiting for review 14% 209 7% 611 7% 3,542
Translated 14% 209 7% 611 7% 3,542
Needs editing 1% 4 1% 10 1% 68
Read-only 0% 0 0% 0 0% 0
Failing checks 1% 4 1% 10 1% 68
Strings with suggestions 0% 0 0% 0 0% 0
Untranslated strings 84% 1,184 92% 7,811 92% 44,001

Quick numbers

8,432
Hosted words
1,397
Hosted strings
14%
Translated
1
Contributors
and previous 30 days

Trends of last 30 days

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

New string to translate

Habitica iOS / Main StringsPortuguese

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

Resource update

Habitica iOS / Main StringsPortuguese

The "HabitRPG/Strings/Base.lproj/Mainstrings.strings" file was changed. 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
User avatar None

Found duplicated string

Habitica iOS / Main StringsPortuguese

Found duplicated string 2 weeks ago
Browse all translation changes