Repository navigation
Contributing Translations
Selldone is translated by community volunteers, and every correction helps merchants and shoppers in your language. You do not need to be a developer to contribute. This page explains the three ways to submit a change and walks you through a pull request on GitHub, step by step.
English is the original language of Selldone. Always compare your language with the English file.
- Add a change request here — open a pull request with the corrected file (recommended, steps below).
- Send it to us — send the original and the corrected versions to @SelldoneInc on X (Twitter) or to lang@selldone.com.
- Create an issue — open a new issue with the language, the file, the key (if you know it), the current text and your suggestion.
-
Find the text. Search for the English sentence in the repository (press / on GitHub, or use the search box). It is usually in
shop/en.ts(storefront),dashboard/en.ts(merchant dashboard),global/en.ts(shared) orbackend/lang/en/*.php(emails, invoices, errors). Note the key, for examplefooter.privacy. -
Open your language file. Same folder, your language code: for example
shop/de.tsorbackend/lang/de/emails.php. - Edit. Click the pencil icon. GitHub creates a fork for you. Change only the text values. Keep keys, quotes, commas and placeholders exactly as they are (see Translator Rules).
-
Describe the change. In the commit message, write the language and what you fixed, for example
de: fix wording of checkout buttons. - Propose the change. Choose Create a new branch and click Propose changes, then Create pull request.
-
Review. Maintainers may ask questions or suggest edits. Once approved, your change is merged and released with the next version of
@selldone/translate.
git clone https://github.com/<your-user>/translate.git
cd translate
git checkout -b de-checkout-wording
# edit shop/de.ts
git commit -am "de: fix wording of checkout buttons"
git push origin de-checkout-wordingThen open a pull request against selldone/translate. If ESLint is available, run npm run lint first to catch syntax
errors in the TypeScript files.
- Only values changed; no keys were renamed, removed or reordered.
- Every
{placeholder}and:placeholderis identical to English. - HTML tags, URLs, emojis and
\nare preserved. - Quotes and commas are still valid TypeScript or PHP.
- The text reads naturally for a native speaker and fits a button or label.
If a key exists in English but not in your language file, add it in the same place (same parent object, same order) and translate the value. Do not delete keys that exist only in your language; mention them in the pull request instead.
You do not need a pull request. Merchants can override the global and shop texts for their own shop with the
language override tool in the Selldone dashboard; the Storefront merges these overrides at runtime. Use this repository
for corrections that should help every shop.
Be respectful and constructive. All contributors follow the Selldone Code of Conduct. General contribution rules are in the Contributing guide.