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

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

348
likes
140/ 160
pub points
96%
popularity

We analyzed this package 7 days ago, and awarded it 140 pub points (of a possible 160):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: BSD-2-Clause.

OK
Provide documentation
20 / 20trigger folding of the section

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

45 out of 88 API elements (51.1 %) have documentation comments.

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

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 35 issues. Showing the first 2:

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

lib/i18n_extension.dart:47:7

   ╷
47 │ ┌       Translations.missingKeys
48 │ └           .add(TranslatedString(locale: translations.defaultLocaleStr, text: key));
   ╵

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

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

lib/i18n_extension.dart:59:7

   ╷
59 │       throw TranslationsException("Locale is the 4 letter string 'null', which is invalid.");
   │       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   ╵

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

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

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

Package Constraint Compatible Latest
args ^2.3.1 2.6.0 2.6.0
equatable ^2.0.5 2.0.5 2.0.5
flutter flutter 0.0.0 0.0.0
intl ^0.18.0 0.18.1 0.19.0
sprintf ^7.0.0 7.0.0 7.0.0
Transitive dependencies
Package Constraint Compatible Latest
characters - 1.3.0 1.3.1
clock - 1.1.2 1.1.2
collection - 1.18.0 1.19.1
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
path - 1.9.1 1.9.1
sky_engine - 0.0.99 0.0.99
vector_math - 2.1.4 2.1.4

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

The constraint `^0.18.0` on intl does not support the stable version `0.19.0`.

Try running dart pub upgrade --major-versions intl to update the constraint.

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.15, Flutter 3.24.4, Dart 3.5.4.

Check the analysis log for details.

348
likes
140
pub points
96%
popularity

Publisher

verified publisherglasberg.dev

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

Documentation

API reference

License

BSD-2-Clause (license)

Dependencies

args, equatable, flutter, intl, sprintf

More

Packages that depend on i18n_extension