language_helper_generator 0.7.1 copy "language_helper_generator: ^0.7.1" to clipboard
language_helper_generator: ^0.7.1 copied to clipboard

A generator for language_helper helps you create a base structure for language_helper.

Language Helper Generator #

A fast and reliable generator for language_helper that automatically creates translation files from your Dart code.

What it does #

Scans your project for text using language_helper extensions (tr, trP, trT, trF) and translate method, then generates organized translation files with your existing translations preserved.

Quick Start #

  1. Add to your project:
dev_dependencies:
  language_helper_generator: ^0.7.0
  1. Generate translations:
dart run language_helper_generator --languages=en,vi --ignore-todo=en

This creates:

  • lib/languages/codes.dart - Language mapping
  • lib/languages/data/en.dart - English translations
  • lib/languages/data/vi.dart - Vietnamese translations (with TODO markers for missing translations)

Common Options #

Option Description Example
--languages Language codes to generate --languages=en,vi,es
--ignore-todo Skip TODO markers for specific languages --ignore-todo=en
--path Custom output directory --path=./lib/resources
--json Generate JSON files instead of Dart --json

Examples #

Basic usage:

dart run language_helper_generator --languages=en,vi

Skip TODOs in English (your base language):

dart run language_helper_generator --languages=en,vi --ignore-todo=en

Generate JSON files for assets:

dart run language_helper_generator --languages=en,vi --json

Custom output path:

dart run language_helper_generator --path=./assets/languages --languages=en,vi

Generated Files #

Dart format (default):

lib/languages/
├── codes.dart          # Language mapping
└── data/
    ├── en.dart         # English translations
    └── vi.dart         # Vietnamese translations

JSON format (with --json flag):

assets/languages/
├── codes.json          # Language mapping
└── data/
    ├── en.json         # English translations
    └── vi.json         # Vietnamese translations

Usage in your app #

Dart Generated Data:

await LanguageHelper.instance.initial(
  data: [LanguageDataProvider.lazyData(languageData)],
  initialCode: LanguageCodes.en,
  isDebug: !kReleaseMode,
);

JSON Generated Data:

await LanguageHelper.instance.initial(
  data: [
    LanguageDataProvider.asset('assets/languages'),
    LanguageDataProvider.network('https://example.com/languages'),
  ],
  initialCode: LanguageCodes.en,
  isDebug: !kReleaseMode,
);

Features #

  • Fast: Uses Dart Analyzer, no build_runner dependency
  • Smart: Preserves existing translations
  • Organized: Groups translations by file path
  • Helpful: Adds TODO markers for missing translations
  • Clean: Removes unused translation keys automatically

Contributing #

Questions or suggestions? Please file an issue or submit a pull request!

2
likes
0
points
868
downloads

Publisher

verified publisherlamnhan.dev

Weekly Downloads

A generator for language_helper helps you create a base structure for language_helper.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

analyzer, args, language_helper, lite_logger, path

More

Packages that depend on language_helper_generator