Skip to main content

How to Contribute

In our quest to make TON the most successful blockchain, ensuring that TON documentation is comprehensible to people worldwide is crucial. Localization is key, and we're excited to have you join us in this effort.

Prerequisites

The TownSquare Labs Localization Program is open to everyone! Here are a few steps you need to take before you start contributing:

  1. Log in to your Crowdin account or sign up.
  2. Select the language you want to contribute to.
  3. Familiarize yourself with the How to Use Crowdin guide and the Translation Style Guide for tips and best practices.
  4. Use machine translations to aid your work but do not rely solely on them.
  5. All translation results can be previewed on the website one hour after they have been proofread.

Roles

Here are the roles you can assume in the system:

  • Language Coordinator – Manages project features within assigned languages.
  • Developer – Uploads files, edits translatable text, connects integrations, and uses the API.
  • Proofreader – Translates and approves strings.
  • Translator (in-house or community) – Translates strings and votes on translations added by others.

Our localization project is hosted on Crowdin.

info

Before you start contributing, read the guidelines below to ensure standardization and quality, making the review process much faster.

Side-by-Side Mode

All tasks are performed in side-by-side mode in the Crowdin Editor. To enable this, click a file you want to work on. At the top right of the page, click the Editor view button and select side-by-side mode for a clearer editor view.
side-by-side mode

Language Coordinator

  • Translate and approve strings
  • Pre-translate project content
  • Manage project members and join requestsmanage-members
  • Generate project reportsgenerate-reports
  • Create taskscreate-tasks

Developer

  • Update Footer Configuration for Your Language :
    1. Fork our repository.
    2. Locate the file src/theme/Footer/config.ts.
    3. Copy the value of the variable FOOTER_COLUMN_LINKS_EN to FOOTER_COLUMN_LINKS_[YOUR_LANG].
    4. Translate the values of the keys headerLangKey and langKey to your language, as we did for Mandarin in FOOTER_COLUMN_LINKS_CN.
    5. Add a new property to FOOTER_LINKS_TRANSLATIONS:
      • Set the key as your ISO language code (two letters, lowercase).
      • The value should be the new variable you just created for your language.
    6. Run the command yarn start:local [YOUR_IOS_LANG_CODE] to preview the new footer in your language.
      (e.g., yarn start:local ru for a preview of the Russian footer)
    7. If everything looks good, create a pull request to the i18n_feat branch.
  • Upload files
  • Edit translatable text
  • Connect integrations (e.g., add GitHub integration) install-github-integration
  • Use the Crowdin API

Proofreader

As a Proofreader, you'll work on files with a blue progress bar. proofread step1 Click on a file to enter the editing interface.

Let's Start Contributing

  1. Make sure you're in side-by-side mode. Filter by Not Approved translations to see strings needing proofreading. proofread filter

  2. Follow these rules:

    • Select strings with a blue cube icon. Check each translation:
      • If correct, click the ☑️ button.
      • If incorrect, move to the next line.

proofread approved

info

You can also review approved lines:

  1. Filter by Approved.
  2. If an approved line has issues, click the ☑️ button to revert it to needing proofreading.
  1. To move to the next file, click the file name at the top, select the new file from the pop-up window, and continue proofreading. to next

Previewing Your Work

Every approved content will be deployed to a preview website within one hour. Check our repo for the preview link in the newest PR. preview link

Translator

As a Translator, your goal is to ensure translations are faithful and expressive, making them as close to the original meaning and as understandable as possible. Your mission is to make the blue progress bar reach 100%.

Let's Start Translating

Follow these steps for a successful translation process:

  1. Select files that haven't reached 100% translation. translator select

  2. Ensure you're in side-by-side mode. Filter by Untranslated strings. translator filter

  3. Your workspace has four parts:

    • Top left: Input your translation based on the source string.
    • Bottom left: Preview the translated file. Maintain the original format.
    • Bottom right: Suggested translations from Crowdin. Click to use, but verify for accuracy, especially with links.
  4. Save your translation by clicking the Save button at the top. translator save

  5. To move to the next file, click the file name at the top and select the new file from the pop-up window. to next

How to Add Support for a New Language

Currently, we have all desired languages in Crowdin. If you are a community manager, follow these steps:

  1. Add a new branch named [lang]_localization (e.g., ko_localization for Korean) on TownSquareXYZ/ton-docs.
  2. Contact the Vercel owner of this repo to add the new language to the menu.
  3. Create a PR request to the dev branch. Do not merge to dev; this is for preview purposes only.

Once these steps are completed, you can see the preview of your language in the PR request. ko preview

When your language is ready for the TON docs, create an issue, and we'll set your language into the production environment.