NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
pub.dev · #742 most downloaded on pub.dev
Easy and Fast internationalizing and localization your Flutter Apps, this package simplify the internationalizing process .
Last release 3 months ago
09 Jun 2026
Release timing varies
gaps range from 3 weeks to 11 months
Some releases are documented
notes for 24 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
103 releases · first in 2018
Nothing published for this version
optimized and clean code more stability
Added change locale dynamically saveLocale default value true
saveLocale default value trueOne column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
this version came with many updates, here are the main ones:
this version came with many updates, here are the main ones:
optimized and clean code more stability
fixed many issues
added Unite test
Customization AssetLoader localizations assetLoader for more details see custom assetLoader
added fallbackLocale as optional
Hiding EasyLocalizationProvider
refactor and update approach localization for more details see example:
// Now V2.0.0
runApp(EasyLocalization(
child: MyApp(),
...
));
// after V2.0.0
runApp(EasyLocalization(
child: MyApp(),
...
));
...
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
var data = EasyLocalizationProvider.of(context).data;
return EasyLocalizationProvider(...);
}}
added Support for context
tr("key", context: context),
plural("key", 1 , context: context),
Nothing published for this version
` dart // after 1.4.1 Text('title'.tr()), Text('switch'.tr( gender: _gender ? "female" : "male")), Text('counter'.plural(counter)), `
optimized and clean code
fixed many issues
added extension for Strings
// after 1.4.1
Text('title'.tr()),
Text('switch'.tr( gender: _gender ? "female" : "male")),
Text('counter'.plural(counter)),
refactor code changed call ~~AppLocalizations.of(context).tr()~~ ~~AppLocalizations.of(context).plural()~~ to tr() and plural()
refactor code changed call AppLocalizations.of(context).tr() to AppLocalizations.of(context).plural()tr() and plural()
// after 1.4.0
Text(
tr('switch', gender: _gender ? "female" : "male"),
),
// before 1.4.0
Text(
AppLocalizations.of(context).tr('switch', gender: _gender ? "female" : "male"),
),
added Flutter extension for Text widget
// after 1.4.0
Text('switch').tr( gender: _gender ? "female" : "male"),
Text('counter').plural(counter),
Nothing published for this version
Nothing published for this version
` json { "gender":{ "male": "Hi man ;)", "female": "Hello girl :)" } } `
merge gender() and tr() .
{
"gender":{
"male": "Hi man ;)",
"female": "Hello girl :)"
}
}
new Text(
AppLocalizations.of(context).tr('switch', gender: _gender ? "female" : "male"),
),
use parameters args for gender.
{
"gender":{
"male": "Hi man ;) {}",
"female": "Hello girl :) {}"
}
}
new Text(
AppLocalizations.of(context).tr('switch', args:["Naama"] gender: _gender ? "female" : "male"),
),
adeed Gender [female,male] gender() .
{
"gender":{
"male": "Hi man ;)",
"female": "Hello girl :)"
}
}
new Text(
AppLocalizations.of(context).gender('switch', _gender ? "female" : "male"),
),
`
Nothing published for this version
- removed data.savedLocale . - optimized and clean code - fixed many issues
data.savedLocale .updated plural() thanks shushper .
updated plural() thanks shushper .
{
"text": {
"day": {
"zero":"{} дней",
"one": "{} день",
"two": "{} дня",
"few": "{} дня",
"many": "{} дней",
"other": "{} дней"
}
}
}
Nothing published for this version
plural() added property resolver for nested key translations
plural() added property resolver for nested key translations
{
"text": {
"day": {
"zero": "day",
"one": "day",
"other": "days"
}
}
}
new Text(
AppLocalizations.of(context).plural("text.day", 2),
),
fixed many issues
- add useOnlyLangCode flag
Load translations from remote or backend
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
- supported shared_preferences - Save selected localization
Nothing published for this version
Added property resolver for nested key translations
{
"title": "Hello",
"msg": "Hello {} in the {} world ",
"clickMe": "Click me",
"profile": {
"reset_password": {
"label": "Reset Password",
"username": "Username",
"password": "password"
}
},
"clicked": {
"zero": "You clicked {} times!",
"one": "You clicked {} time!",
"other": "You clicked {} times!"
}
}
new Text(
AppLocalizations.of(context).tr('profile.reset_password.title'),
),
Nothing published for this version
Nothing published for this version
- Added Support country codes
Nothing published for this version
Updated tr() function added Multi Argument
tr() function added Multi ArgumentNothing published for this version
Added Argument to tr() function.
tr() function.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →