NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #1909 most downloaded on pub.dev
i18n made easy for Flutter. With flutter_i18n you can make your app international, using just a simple .json, .xml, .yaml or .toml file!
Last release 9 months ago
18 Dec 2025
Release timing varies
gaps range from 2 weeks to 11 months
Nearly every release is documented
notes for 59 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
70 releases · first in 2018
Upgrade http@1.6.0 Fixed formatting Fix for #238
Upgrade http@1.6.0 Fixed formatting Fix for #238
Upgrade tom@0.17.0, http@1.5.0, removed pedantic Fixed linting issues
Upgrade tom@0.17.0, http@1.5.0, removed pedantic Fixed linting issues
Upgrade packages
Upgrade packages
One column per quarter.
Fix for #185 Fix for #216
Fix for #185 Fix for #216
Fix for #222
Fix for #222
Ability to define custom separator
Ability to define custom separator
Change intl version to '>=0.17.0-0 <=0.19.0'
Change intl version to '>=0.17.0-0 <=0.19.0'
Upgrade intl@0.18.1, xml2json@6.2.2, toml@0.15.0, http@1.1.2 Fix: deprecation warnings
Upgrade intl@0.18.1, xml2json@6.2.2, toml@0.15.0, http@1.1.2 Fix: deprecation warnings
Upgrade http@1.1.0, logging@1.2.0, xml2json@6.2.0, yaml@3.1.2, path@1.8.3 Fix: deprecation warnings
Upgrade http@1.1.0, logging@1.2.0, xml2json@6.2.0, yaml@3.1.2, path@1.8.3 Fix: deprecation warnings
Support for Dart 3 and Flutter 3.10 Fix for #204
Support for Dart 3 and Flutter 3.10 Fix for #204
Dependencies upgrade
Dependencies upgrade
Fix for #197 and #196
Fix for #197 and #196
Fix for #190
Fix for #190
Fix for #189
Fix for #189
Fix for #186 Recursively merge the translation map with the fallback map
Fix for #186 Recursively merge the translation map with the fallback map
Fix for #184
Fix for #184
Fix for #179
Fix for #179
Support for script code Support for toml format Fix for #173
Support for script code Support for toml format Fix for #173
Fix for #167 Dependencies upgrade
Fix for #167 Dependencies upgrade
Fix for #159
Fix for #159
Dartfmt
Dartfmt
Nullsafe support + static analysis fixes
Nullsafe support + static analysis fixes
intl upgraded to version 0.17.0
Initial Flutter 2 support:
Fix for #150
Fix for #150
Introducing validate and diff actions
Introducing validate and diff actions
Nothing published for this version
Fix for streams listened twice
Fix for streams listened twice
Loading and loaded stream, in order to detect loading translations status
Loading and loaded stream, in order to detect loading translations status
Better dartdocs
Better dartdocs
Removed dart:io for better Flutter Web support.
Removed dart:io for better Flutter Web support.
Plugins and better Flutter Web support.
Plugins and better Flutter Web support.
Removed useless parameter from LocalTranslationLoader and fixed delegate load method.
Removed useless parameter from LocalTranslationLoader and fixed delegate load method.
Support for Flutter Web. Note: due to dart:io bug, NetworkFileTranslationLoader can't be used.
Support for Flutter Web. Note: due to dart:io bug, NetworkFileTranslationLoader can't be used.
New loader provided: - LocalTranslationLoader
New loader provided:
RTL support. Test fix for issue/115
RTL support. Test fix for issue/115
Removed cache parameter from loadString method, resolve issue/116
Removed cache parameter from loadString method, resolve issue/116
Added missing translation handler, according to issue/67
Added missing translation handler, according to issue/67
Support for decode strategies on other loaders
Support for decode strategies on other loaders
Full support for supportedLocales
Full support for supportedLocales
New feature: missing key are now retrieved from the fallback file.
New feature: missing key are now retrieved from the fallback file.
New feature: file translation decode strategies. New translation strategy provided, able to load XML file.
New feature: file translation decode strategies. New translation strategy provided, able to load XML file.
Fixed immutable warnings.
Fixed immutable warnings.
Fix for #83.
Fix for #83.
In the I18nText and I18nPlural widgets, the child parameter is now optional. The default value of the child parameter is now `Text("")`
In the I18nText and I18nPlural widgets, the child parameter is now optional.
The default value of the child parameter is now Text("")
New loader provided: `NamespaceFileTranslationLoader`
New loader provided: NamespaceFileTranslationLoader
Plural translator improvements
Plural translator improvements
New translation mechanism, with different and customizable loaders provided:
New translation mechanism, with different and customizable loaders provided:
Nothing published for this version
Added stateless widgets in order to avoid to deal with BuildContext.
Added stateless widgets in order to avoid to deal with BuildContext.
I18nText("your.key", Text(""))
I18nText("your.key", Text(""), translationParams: {"user": "Flutter lover"})
I18nPlural("clicked.times", 2, Text(""))
Added a new optional parameter to the translate method: *fallbackKey*. You can use it when the translation *key* is not found.
Added a new optional parameter to the translate method: fallbackKey. You can use it when the translation key is not found.
Library will print debug messages only in development mode
Library will print debug messages only in development mode
Bugfix and code improvement
Bugfix and code improvement
Improved *json* and *yml* loading
Improved json and yml loading
Support for *yml* language files
Support for yml language files
Fix for #48 and implemented feature for #49. From this version of *FlutterI18n*, you can use as 4th parameter the *forcedLanguage* parameter, in order
Fix for #48 and implemented feature for #49. From this version of FlutterI18n, you can use as 4th parameter the forcedLanguage parameter, in order to avoid to call the refresh method on application startup.
Fix for #41
Fix for #41
Fix for #17
Fix for #17
Fix for the delegate
Fix for the delegate
Fix for bug #22
Fix for bug #22
Exposed new method that return the locale used by the library, as requested in #16:
Exposed new method that return the locale used by the library, as requested in #16:
FlutterI18n.currentLocale();
NOTE: the refresh method now accept a Locale as second parameter, instead of two strings. NOTE: the constructor of FlutterI18nDelegate now accept only named parameter.
Your coding agent can read these notes before it upgrades. Set up the MCP server →