dust blog
Let Static Translation Keys Create the ARB Shape

Flutter localization needs ARB files, supported locales, and app bootstrap code.
That setup is clear. The repeated part is keeping message files in sync with the text your app actually uses.
Dust i18n starts from static keys in source.
Use TranslatedText or context.tr with a literal key and default text. The namespace before the first underscore becomes the ARB file name.
Run dust i18n build. Dust creates missing locale files, keeps existing translations, and refreshes the generated Flutter bootstrap.
It does not translate copy for you.
It keeps the message shape close to the code that uses it.
One detail matters: declare each locale directory as a Flutter asset. assets/i18n/ alone does not include the nested locale folders.
Read the Dust i18n keys and namespaces guide.
#Dust #I18n #Flutter #Dart #CodeGeneration
