alex - command line tool for working with Flutter projects.
It's recommended to install the package globally and use as an executable.
You can install the package from the command line:
$ pub global activate alex
$ flutter pub global activate alex
And follow the instructions (you should add PATH variable on unix systems).
Now you can execute commands with
⚠️ Attention! If you have only Flutter installed and doesn't have separate Dart SDK
installed, then you haven't
pub command. So when you try to run
alex you will see something like:
~/Development/flutter/.pub-cache/bin/alex: line 17: pub: command not found
There are more than one solution for this. You can just install seperate Dart SDK if you want.
Or, if you don't want to do it, you can edit specified file (
~/Development/flutter/.pub-cache/bin/alex in this example). All you need to change in it - it's use
flutter pub instead of
pub, so replace
pub global run alex:alex "$@" with
flutter pub global run alex:alex "$@", save the file, and you are all set.
alex is working in the current directory. So if you want to work with a specific project, you should run the command in project's root directory.
To provide more convinient way to work with project,
alex can use some configuration.
You can define configuration in your project's
or in separate file
You can see all configuration options and it's default values in the example config
More about specified configuration parameters - in modules descriptions in the Commands section.
Work with localization files.
Extract string to ARB
alex l10n extract
Generate Dart code by ARB
alex l10n generate
Generate XML for translation
alex l10n to_xml
Also you can export json localization to xml. Json localization can be used for a backend localization.
alex l10n --from=json --source=/path/to/json/localization/dir
Import translations from XML
It's for working with translations from Google Play.
You can export xml translations to the project arb translations:
alex l10n from_xml
Also you can export to the Android localization:
alex l10n from_xml --to=anroid
And to the iOS localization:
alex l10n from_xml --to=ios
Work with code.
JsonSerializable and other.
alex code gen