easy_localization_loader icon indicating copy to clipboard operation
easy_localization_loader copied to clipboard

custom assets loaders for easy_localization

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