App Multi Language Support

When launching your app in multiple regions it is good practice to support multi languages.

I know some languages get trick with phrases, so care needs to be taken.

What do you use for translating your App?

I use i18n_extension as the translation package.

And soon MyText.ai, which uses an OpenAI GPT-4o based AI agent to translate everything (works with all the popular translation packages, not only i18n_extension).

1 Like

Thanks I use this

My app is 100% offline, I can’t use an AI agent to do the translation.

I am looking at how to pre-translate the content for the app and to ensure that the phrases are correct?

I want to be certain the translation are 100% correct, I rather hard code it, than rely on a external service afterwards.

I am a still using one of the original approaches with Flutter in using the intl_translation package. I create all my strings in single class then use the package to generate arb files. These are then translated with a mix of volunteers who speak the language, Google translate and Bing Translator.

For me it works really well, gives me full control and is baked in at compile time. As the language count increases it may become more of a maintenance headache so I am also looking at services such as Weblate to help me organise it.

I need to find some Spanish conquistadors and French legionnaires :joy:

The AI agent is not online. You can use it for your offline app.

The agent looks at your code (locally, without sending your whole code to the cloud or anything), translates everything, puts all the translations into your code (as files in your assets, or hardcoded as Dart code) and then you commit the translations to your GitHub repo. As your app evolves, it will add new translations as needed, to your code.

If you have volunteers who speak the language, that’s fantastic.

However, tools like Google Translate and Big Translator often produce poor translations. They lack context, frequently choose incorrect synonyms, and fail to account for cultural nuances. This can result in awkward or nonsensical phrases specific to that culture.

Another issue is consistency. The same text might be translated differently in various parts of your app because most AI or machine translators don’t ensure uniformity. If basic translations are acceptable, these tools can be cost-effective or even free. But if quality matters, you’ll need people who speak the language to review and refine their translations.

We’ll be adding translation comparisons to our website between MyText, Google, and GPT-4, to show how MyText nails translations that the others get very wrong.

MyText’s AI agent is different because it creates translations as accurate as professional human translators in most languages. It’s also easy to use, just press a button. Unlike services like Weblate, which still require a lot of manual effort. Also, I just checked: Weblate starts at 37 Euros, while MyText begins at just 4 dollars.

I use slang_flutter and am super happy with it. I’ve used it in all my projects for about 3 years now, the doc is great and the amount of flexibility is just astronomical + it’s fully typesafe.

I also recently discovered a package for translating slang files with openAI as well slang_gpt.

I’ve used lots of packages but in my recents projects I used easy_localization and a combination of intl and intl_utils

Also the https://translate.i18next.com/ was a good tool for my hard coded translations.