Alias zh -> zh-Hans so en->zh actually translates

FixTranslateService
Shipped
May 10, 2026 at 12:39 AM UTC
Author
Kamo
Commit
fa66033

LibreTranslate's /languages endpoint advertises Chinese under the region-specific codes "zh-Hans" and "zh-Hant" (never bare "zh"), even though POST /translate accepts the bare code. Without an alias, **************** returned false, the ProviderRouter fell through both providers, and the English source was returned verbatim — leaving 99.7% of zh.json untranslated for months. Add a small LOCALE_ALIASES map (currently only zh -> zh-Hans), apply it on both supports() and translate(). Update the existing test to mirror the real /languages payload, and add a regression test.

All changes

Like what you see shipping?

Every one of these updates lands in your workspace automatically. Start free and watch it grow week after week.

Start Free ForeverView Pricing