Custom assets loaders for Easy Localization package

Pub Version Code Climate issues GitHub closed issues GitHub contributors GitHub repo size GitHub forks GitHub stars

CodeFactor Grade GitHub license

Supported formats

  • x JSON (JsonAssetLoader)
  • x CSV (CsvAssetLoader)
  • x HTTP (HttpAssetLoader)
  • x XML (XmlAssetLoader, XmlSingleAssetLoader)
  • x Yaml (YamlAssetLoader, YamlSingleAssetLoader)
  • x FILE (FileAssetLoader)

Configuration

  1. Add this to your package's pubspec.yaml file:
dependencies:
  #Easy Localization main package
  easy_localization: <last_version>

    # stable version install from https://pub.dev/packages
  easy_localization_loader: <last_version>

  # Dev version install from git REPO
  easy_localization_loader:
    git: https://github.com/aissat/easy_localization_loader.git

  1. Change assetLoader and path
...
void main(){
  runApp(EasyLocalization(
    child: MyApp(),
    supportedLocales: [Locale('en', 'US'), Locale('ar', 'DZ')],
    path: 'resources/langs/langs.csv',
    assetLoader: CsvAssetLoader()
  ));
}
...
  1. All done!.

Loaders Specification

HttpAssetLoader

In order to use HttpAssetLoader you must provide a path to a folder (i.e. base path) where all your translations are placed like https://example.com/translations

Your translations should be created as separate files with .json extension. Placing translations as individual files reduces the size of the file to load on application init. Example:

translations/
├── en-US.json
└── uk-UA.json