Translations
Guide for contributing translations to Jindong documentation
Contributing Translations
Thank you for helping make Jindong accessible to more developers!
How Translation Works
Jindong uses a dot parser pattern for translations. Translation files are placed in the same directory as the original file with a language suffix.
Supported Languages
| Code | Language | Status |
|---|---|---|
en | English | Default |
ko | Korean | Accepting contributions |
zh | Chinese | Accepting contributions |
ja | Japanese | Accepting contributions |
To add support for a new language, see Adding a New Language.
Translating Documentation
Step 1: Choose a File
Pick an untranslated file to work on. Priority files:
index.mdx- Landing pageguide/getting-started.mdx- First stepsguide/quick-start.mdx- Basic usageguide/why-jindong.mdx- Motivation
Step 2: Create Translation File
Create a new file with the language suffix:
Step 3: Translate Content
- Keep the same frontmatter structure
- Translate
titleanddescription - Translate all content
- Keep code examples unchanged (unless comments need translation)
Example:
Step 4: Translate Navigation (meta.json)
Create meta.{lang}.json for translated section titles:
The pages array uses the same file names (without language suffix). Fumadocs automatically matches the correct translation.
Translation Guidelines
What to Translate
- Page titles and descriptions
- Headings and body text
- Code comments (when helpful)
- Alt text for images
What NOT to Translate
- Code syntax and API names (
Jindong,Haptic,Delay) - Technical terms when commonly used in English
- URLs and file paths
- Brand names
Style Tips
- Use natural, fluent language for your locale
- Keep the same tone as the original (friendly, technical)
- Preserve formatting (headings, lists, code blocks)
- Maintain consistent terminology throughout
Translating README
The project README can also be translated:
- Create
README.{lang}.mdin the repository root - Translate all content
- Update links to point to translated docs (if available)
Example: README.ko.md for Korean.
Adding a New Language
To enable a new language:
- Open
documentation/lib/i18n.ts - Add the language code to the
languagesarray:
- Add the language name to
languageNames:
- Submit a PR with at least one translated page
Keeping Translations Updated
When the original English content changes:
- Check for outdated translations
- Update the translation to match
- Consider adding a note at the top for major changes
Outdated translations can confuse users. If you notice a translation is out of date, please open an issue or submit an update.
Testing Translations
- Add your language to
i18n.ts(if not already added) - Run
yarn dev - Visit
/{lang}/docsto see your translation - Verify navigation and links work correctly
- Run
yarn buildto ensure static export succeeds
PR Checklist
Before submitting your translation:
- File uses correct naming:
{name}.{lang}.mdx - Frontmatter is translated (
title,description) - All text content is translated
- Code examples are preserved (with translated comments if needed)
-
meta.{lang}.jsonis created/updated for the section - Links work correctly
- Tested with
yarn dev - Build passes with
yarn build
Questions?
If you have questions about translations, please open an issue on GitHub with the translation label.