intl4x 0.8.2 copy "intl4x: ^0.8.2" to clipboard
intl4x: ^0.8.2 copied to clipboard

A lightweight modular library for internationalization (i18n) functionality.

package:intl4x Pub package publisher

A lightweight modular library for internationalization (i18n) functionality.

Features #

  • Formatting for dates, numbers, and lists.
  • Collation.
  • Display names.

Status - experimental #

We're actively iterating on the API for this package (please provide feedback via our issue tracker).

Number format List format Date format Collation Display names Plural Rules
ECMA402 (web) ✔️ ✔️ ✔️ ✔️ ✔️ ✔️
ICU4X (web/native) ✔️ ✔️ ✔️ ✔️ ✔️ ✔️

Implementation and Goals #

  • Wraps around ICU4X on native or web platforms.
  • Wraps around the built-in browser functionalities on the web.
    • Select which locales you want to use the browser for through an EcmaPolicy.

Example #

The functionalities are called through getters on an Intl instance, i.e.

import 'package:intl4x/ecma_policy.dart';
import 'package:intl4x/intl4x.dart';
import 'package:intl4x/number_format.dart';

void main() {
  final numberFormat = Intl(
    ecmaPolicy: const AlwaysEcma(),
    locale: const Locale(language: 'en', region: 'US'),
  ).numberFormat(NumberFormatOptions.percent());

  print(numberFormat.format(0.5)); // prints 50%
}
6
likes
120
pub points
47%
popularity

Publisher

verified publisherlabs.dart.dev

A lightweight modular library for internationalization (i18n) functionality.

Repository (GitHub)
View/report issues
Contributing

Topics

#i18n

Documentation

API reference

License

BSD-3-Clause (LICENSE)

Dependencies

ffi, js, meta

More

Packages that depend on intl4x