In the recent Hestia survey, many users asked me to add Chinese localization to Hestia. That's no problem with the current technology, so why not? I thought the hardest part was wiring all the hardcoded strings, and that everything would be downhill from there. Turns out I was so wrong...

I first translate it from English to Indonesian, my native language. Then I approach the Chinese localization using both as references, tackling it from two angles simultaneously. It resulted in a decent localization that is neither stiff nor feels out of place.

Then a revelation came to me when I tried using it. All the menus, buttons, and settings are now in pinyin, except the content itself:

Most mods are in English, so even with a Chinese interface, they would still be staring at walls of English text. This only solves half the problem!

Some online games I played over a decade ago had a translation button in their chat window, it was helpful. I figured Hestia needed the same button. The problem now is, who will translate it? I explored some options, but they were either too expensive or had unacceptable translation quality.

I decided to build myself one with Rust + Actix and deploy it on my own server. An LLM now handles the translation, and with the right instructions, it can produce contextual translations. It's still taking 15-60s to complete a single translation, but once done, it's aggressively cached on Redis for speed and on MySQL for persistence.

The tricky part was in preventing abuse. The service must be publicly available, without any authentication or an API key, because Hestia's users will access the translation service from their own PCs. So I had to hardcode it to process only GameBanana mods along with a strict rate limiter.

While translation quality isn't the best, it's actually solid enough. Now, even I can read what mod does, regardless of what language it's written in.