Skip to content
DispatchAtlas
Search

Translations

How DispatchAtlas localizes its documentation: the locale cohort, the current coverage, the machine-seed plus human-review pipeline, and how to contribute a translation.

DispatchAtlas serves its documentation in a cohort of twelve locales. English is the source; every other locale is a translation target. This page states what is translated today, the discipline that governs translation quality, and the steps to contribute a translation.

Locale cohort

The site registers twelve locales — English at the site root and eleven prefixed translation targets:

LocaleCodeDirection
English (source)enleft-to-right
Mandarin (Simplified)zh-cnleft-to-right
Spanishesleft-to-right
Portuguese (Brazil)pt-brleft-to-right
Frenchfrleft-to-right
Germandeleft-to-right
Japanesejaleft-to-right
Koreankoleft-to-right
Russianruleft-to-right
Indonesianidleft-to-right
Arabicarright-to-left
Hindihileft-to-right

Each page declares its lang, Arabic additionally renders right-to-left, and a symmetric hreflang set plus an x-default pointing at the English page links the cohort for search engines. A locale that has not yet translated a given page omits that page's hreflang entry rather than pointing it at English, so the absence is reported accurately.

Current coverage

The interface chrome — navigation, controls, search, and footer — is translated across all twelve locales, and every documentation page currently ships in all twelve locales; tools/translation_coverage.py reports the page-by-page figures, including any orphaned translation a source rename would strand. Should a future page land before its translations, the requested locale renders the English source as a fallback so no route is ever broken, and the language switcher always reaches every page in at least its English form. Which pages a reviewer has attested is tracked through the review pipeline below, not on this page.

The machine-seed plus human-review pipeline

Translation quality is a release criterion, not an afterthought. Two stages govern every translated page:

  1. Machine seed. A page is first drafted by machine translation against the per-locale glossary, which fixes the domain vocabulary (scheduling, dispatch, benchmark, solver, objective, constraint) to one consistent term per locale.
  2. Human review. A native-fluent reviewer corrects the seed for fluency, terminology, and tone before it ships. Machine-seeded copy is never published as final unreviewed text.

A page is production-ready in a locale only after a reviewer has attested it. Until then the English fallback stands, which is accurate and complete rather than partially-translated.

Contributing a translation

  1. Pick a page under site/content/docs/en/ and the target locale.
  2. Create the mirror path under site/content/docs/<locale>/ with the same relative slug. Translate the title frontmatter key — every page requires it. Add a translated description as well when the English source carries one; most existing translations predate that key and ship title only, and a page without it renders with no meta description rather than falling back to the English text.
  3. Translate the body, honoring the locale's glossary so domain terms stay consistent with the rest of that locale.
  4. Keep every code block, command, identifier, and figure reference identical to the source — only natural-language prose is translated. Internal documentation links take the target locale's prefix (for example, the German page links to /de/getting-started/quick-start/ where the English source links to /getting-started/quick-start/); external link targets stay identical.
  5. Open a contribution for native-fluent review. Once attested, the page ships in that locale and its hreflang entry is added to the cohort.

See the Contribution Guide for the repository workflow and the review process that applies to every change.