Developers
Contributing
Contributing Translations

Contributing Translations

We are always open for help with translations! Currently we utilise AI to generate the initial translations for new languages, which are then improved over time by our awesome community.

If you are looking for development notes on translations, you can find them here.

Contributions are made through GitHub Pull Requests, so you will need a GitHub account to contribute.

Overview

We store our translations in PO files, which are located in our GitHub repository here (opens in a new tab).

The translation files are organized into folders represented by their respective language codes (en for English, de for German, etc). Each language folder contains three PO files:

  1. web.po: Translations for the web application
  2. marketing.po: Translations for the marketing application
  3. common.po: Shared translations between web and marketing

Each PO file contains translations which look like this:

#: apps/web/src/app/(signing)/sign/[token]/no-longer-available.tsx:61
msgid "Want to send slick signing links like this one? <0>Check out Documenso.</0>"
msgstr "Möchten Sie auffällige Signatur-Links wie diesen senden? <0>Überprüfen Sie Documenso.</0>"
  • msgid: The original text in English (never edit this manually)
  • msgstr: The translated text in the target language
⚠️

Notice the <0> tags? These represent HTML elements and must remain in both the msgid and msgstr. Make sure to translate the content between these tags while keeping the tags intact.

How to Contribute

Updating Existing Translations

  1. Fork the repository.
  2. Navigate to the appropriate language folder.
  3. Open the PO file you want to update (web.po, marketing.po, or common.po).
  4. Make your changes, ensuring you follow the PO file format.
  5. Commit your changes with a message such as chore: update German translations
  6. Create a Pull Request.

Adding a New Language

If you want to add translations for a language that doesn't exist yet:

  1. Create an issue in our GitHub repository requesting the addition of the new language.
  2. Wait for our team to review and approve the request.
  3. Once approved, we will set up the necessary files and kickstart the translations with AI to provide initial coverage.

Need Help?

If you have any questions, hop into our Discord (opens in a new tab) and ask us directly!

Thank you for helping make Documenso more accessible to users around the world!

;