Translation Guide - thelastmile/FreeCodeCamp GitHub Wiki

Guidelines for translating FreeCodeCamp to any language

Thank you so much for your interest in translating FreeCodeCamp. Reading this document is recommended for participating in a collective effort to bring FreeCodeCamp to more and more people all around the world.

How to Contribute to Translations?

There are various ways in which you can contribute collaboratively to the translations. Every translation effort usually follows the workflow below.

Pro tip: You can contribute to any or all of below phases in the work flow as per your interest.

Guidelines and Resources

General guidelines

  • Try not to be too formal yet not too casual, just to keep things friendly.
  • In order to make contents more understandable for native speakers of your target language (think of those who don't speak English), translate as much as you can, try to use a word in English only if it is already widely used in the countries where your target language is spoken.

Glossary

It is efficient if all the translators working on the same language create a glossary showing the translation of words in English employed in FreeCodeCamp's challenges. Sometimes there is more than one way of translating some terms, and regional differences might create confusion (for example, some terms might differ between Spanish from Spain and from Latin America, or between the French language employed in Canada and in France). Be democratic! Choose the most appropriate translation by voting and keep a record of the results. One example of such record can be found here: FreeCodeCamp Glossary (English to Spanish) Use the chat room for discussing the glossary, so no one will miss anything.

If you need some help with the Google Translator Toolkit

You may find help automating the translation process by employing the Google Translator Toolkit, please see: Spanish guide

Creating a test instance of FreeCodeCamp

Seeing the final product as you advance with the translation can help you to stay motivated. That's why it is a good idea to create a test instance of FreeCodeCamp where you can include the most recent changes of the translation of the language you're working on and use FreeCodeCamp including those changes. The following test instance was created for the Spanish version of FreeCodeCamp: Map In order to create a test instance, go through the following steps:

  1. Verify with the other translators of the same language you're working on if a test instance has been created before
  2. Follow the instructions of Contributing page be sure you can see a running instance in English
  3. Follow the changes shown in this commit but instead of descriptionEs and nameEs use the keys of your language (e.g descriptionFr and nameFr)

References

If you find it useful, you can translate these instructions to your language and adapt them for your translation team (see for example, original in Spanish.)

This guide is based on this writeup.