localization_gen 1.0.5
localization_gen: ^1.0.5 copied to clipboard
Type-safe localization generator for Flutter with nested JSON support, modular organization, and parameter interpolation.
example/README.md
Examples #
This directory contains examples demonstrating how to use localization_gen.
Simple Examples #
The following standalone examples show basic usage:
1. Basic Usage (basic_usage.dart) #
The simplest way to use localization_gen:
dart run example/basic_usage.dart
Demonstrates:
- Creating a LocalizationGenerator instance
- Running the generation process
- Default configuration from pubspec.yaml
2. Custom Configuration (custom_config.dart) #
Using a custom configuration file:
dart run example/custom_config.dart
Demonstrates:
- Using a custom pubspec.yaml path
- Overriding default configuration
3. Programmatic Usage (programmatic_usage.dart) #
Using individual package components:
dart run example/programmatic_usage.dart
Demonstrates:
- Reading configuration with ConfigReader
- Parsing JSON files with JsonLocalizationParser
- Generating code with DartWriter
- Writing output files
Quick Start #
- Add to your
pubspec.yaml:
dev_dependencies:
localization_gen: ^1.0.4
localization_gen:
input_dir: 'assets/localizations'
output_dir: 'lib/assets'
class_name: 'AppLocalizations'
- Create JSON files in
assets/localizations/:
{
"@@locale": "en",
"hello": "Hello",
"welcome_user": "Welcome {name}!"
}
- Generate code:
dart run localization_gen
- Use in your Flutter app:
import 'assets/app_localizations.dart';
// In your MaterialApp
localizationsDelegates: [
AppLocalizationsExtension.delegate,
],
supportedLocales: AppLocalizations.supportedLocales,
// In your widgets
final l10n = AppLocalizations.of(context);
Text(l10n.hello);
Text(l10n.welcome_user(name: 'John'));
Full Flutter Examples #
For complete Flutter application examples, see:
default/- Complete Flutter app with basic localizationmodular/- Modular file organization with multiple modulesmonorepo/- Multi-package monorepo setup
These are full Flutter projects and can be run with:
cd example/default
flutter run