i18n_extension 15.0.0 copy "i18n_extension: ^15.0.0" to clipboard
i18n_extension: ^15.0.0 copied to clipboard

Translation and Internationalization (i18n) for Flutter. Easy to use for both large and small projects. Uses Dart extensions to reduce boilerplate.

346
likes
135/ 160
pub points
19k
downloads

We analyzed this package 24 hours ago, and awarded it 135 pub points (of a possible 160):

failed
Follow Dart file conventions
15 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

0/5 points: Provide a valid README.md

Links in `README.md` should be secure. 1 link is insecure.

README.md:1088:5

     ╷
1088 │ the <a href="http://www.unicode.org/reports/tr35/">Unicode Locale Identifier (ULI) syntax</a>).
     │     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
     ╵

Use https URLs instead.

5/5 points: Provide a valid CHANGELOG.md

0/10 points: Use an OSI-approved license

No license was recognized.

Consider using an OSI-approved license in the LICENSE file to make it more accessible to the community.

OK
Provide documentation
20 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

99 out of 111 API elements (89.2 %) have documentation comments.

Some symbols that are missing documentation: default.i18n, default.i18n.Localization.i18n, default.i18n.Localization.plural, i18n_extension, i18n_extension.I18n.child.

10/10 points: Package has an example

OK
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 6 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

0/0 points: WASM compatibility

This package is compatible with runtime wasm, and will be rewarded additional points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

partial
Pass static analysis
40 / 50trigger folding of the section

40/50 points: code has no errors, warnings, lints, or formatting issues

Found 14 issues. Showing the first 2:

INFO: Statements in an if should be enclosed in a block.

lib/src/extensions.dart:532:7

    ╷
532 │       languageTag = languageTag.replaceAll('-', separator);
    │       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/extensions.dart

INFO: Statements in an if should be enclosed in a block.

lib/src/i18n_loader.dart:202:11

    ╷
202 │ ┌           throw TranslationsException("Error in $url: "
203 │ └               "Value '$value' for key '$key' is not a String.");
    ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/i18n_loader.dart

OK
Support up-to-date dependencies
40 / 40trigger folding of the section

10/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
flutter flutter 0.0.0 0.0.0
gettext_parser ^0.2.0 0.2.0 0.2.0
http ^1.2.2 1.2.2 1.2.2
i18n_extension_core ^5.0.0 5.0.0 5.0.0
intl >=0.17.0 <=0.20.1 0.20.1 0.20.1
shared_preferences ^2.3.3 2.3.4 2.3.4
Transitive dependencies
Package Constraint Compatible Latest
async - 2.12.0 2.12.0
characters - 1.3.0 1.4.0
clock - 1.1.2 1.1.2
collection - 1.19.0 1.19.1
ffi - 2.1.3 2.1.3
file - 7.0.1 7.0.1
flutter_web_plugins - 0.0.0 0.0.0
http_parser - 4.1.1 4.1.1
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
path - 1.9.1 1.9.1
path_provider_linux - 2.2.1 2.2.1
path_provider_platform_interface - 2.1.2 2.1.2
path_provider_windows - 2.3.0 2.3.0
platform - 3.1.6 3.1.6
plugin_platform_interface - 2.1.8 2.1.8
shared_preferences_android - 2.4.0 2.4.0
shared_preferences_foundation - 2.5.4 2.5.4
shared_preferences_linux - 2.4.1 2.4.1
shared_preferences_platform_interface - 2.4.1 2.4.1
shared_preferences_web - 2.4.2 2.4.2
shared_preferences_windows - 2.4.1 2.4.1
sky_engine - 0.0.0 0.0.0
source_span - 1.10.1 1.10.1
sprintf - 7.0.0 7.0.0
string_scanner - 1.4.1 1.4.1
term_glyph - 1.2.2 1.2.2
typed_data - 1.4.0 1.4.0
vector_math - 2.1.4 2.1.4
web - 1.1.0 1.1.0
xdg_directories - 1.1.0 1.1.0

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

10/10 points: Package supports latest stable Dart and Flutter SDKs

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.17, Flutter 3.27.0, Dart 3.6.0.

Check the analysis log for details.

346
likes
135
points
19k
downloads

Publisher

verified publisherglasberg.dev

Weekly Downloads

Translation and Internationalization (i18n) for Flutter. Easy to use for both large and small projects. Uses Dart extensions to reduce boilerplate.

Repository (GitHub)
View/report issues

Topics

#i18n #localization #translation #extension

Documentation

API reference

License

unknown (license)

Dependencies

flutter, gettext_parser, http, i18n_extension_core, intl, shared_preferences

More

Packages that depend on i18n_extension