Files
esign/apps/docs/content/docs/developers/contributing/contributing-translations.mdx
T
zeekay d2144b647e rebrand: Documenso → Hanzo eSign across user-facing surfaces
Mechanical brand swap across user-visible strings only. Internal package
identifiers (@hanzo/sign-*), database column names, and upstream npm package
names are unchanged so existing installs and APIs keep working.

- 'Hanzo Sign' → 'Hanzo eSign' in README, docs, marketing pages, email
  copy, UI strings, page titles, meta tags, alt text.
- sign.hanzo.ai → esign.hanzo.ai on every marketing link, FROM_ADDRESS
  fallback ([email protected]), support email, OAuth callback hosts,
  documentation domain, OG image URL.
- github.com/hanzoai/sign → github.com/hanzoai/esign in README badges,
  CONTRIBUTING, docs, deploy workflow, openpage-api github proxy routes.
2026-06-07 12:15:29 -07:00

92 lines
3.1 KiB
Plaintext

---
title: Contributing Translations
description: Learn how to contribute translations to Hanzo eSign and become part of our community.
---
import { Callout } from 'fumadocs-ui/components/callout';
import { Step, Steps } from 'fumadocs-ui/components/steps';
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](/docs/developers/local-development/translations).
<Callout type="info">
Contributions are made through GitHub Pull Requests, so you will need a GitHub account to
contribute.
</Callout>
## Overview
We store our translations in PO files, which are located in our GitHub repository [here](https://github.com/hanzoai/esign/tree/main/packages/lib/translations).
The translation files are organized into folders represented by their respective language codes (`en` for English, `de` for German, etc).
Each PO file contains translations which look like this:
```po
#: apps/remix/app/(signing)/sign/[token]/no-longer-available.tsx:61
msgid "Want to send slick signing links like this one? <0>Check out Hanzo eSign.</0>"
msgstr "Möchten Sie auffällige Signatur-Links wie diesen senden? <0>Überprüfen Sie Hanzo eSign.</0>"
```
- `msgid`: The original text in English (never edit this manually)
- `msgstr`: The translated text in the target language
<Callout type="warn">
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.
</Callout>
## How to Contribute
### Updating Existing Translations
{/* prettier-ignore */}
<Steps>
<Step>
Fork the repository
</Step>
<Step>
Navigate to the appropriate language folder and open the PO file you want to update
</Step>
<Step>
Make your changes, ensuring you follow the PO file format
</Step>
<Step>
Commit your changes with a message such as <code>chore: update German translations</code>
</Step>
<Step>
Create a Pull Request
</Step>
</Steps>
### Adding a New Language
If you want to add translations for a language that doesn't exist yet:
{/* prettier-ignore */}
<Steps>
<Step>
Create an issue in our GitHub repository requesting the addition of the new language
</Step>
<Step>
Wait for our team to review and approve the request
</Step>
<Step>
Once approved, we will set up the necessary files and kickstart the translations with AI to
provide initial coverage
</Step>
</Steps>
## Need Help?
<Callout type="info">
If you have any questions, hop into our [Discord](https://esign.hanzo.ai/discord) and ask us directly!
</Callout>
Thank you for helping make Hanzo eSign more accessible to users around the world!
## See Also
- [Translations (Development)](/docs/developers/local-development/translations) - Technical guide to translations in code
- [Contributing Guide](/docs/developers/contributing) - General contributing guidelines