easy_theme_extension 0.0.1-dev.2 copy "easy_theme_extension: ^0.0.1-dev.2" to clipboard
easy_theme_extension: ^0.0.1-dev.2 copied to clipboard

A zero-boilerplate code generator for Flutter ThemeExtension classes.

easy_theme_extension #

A zero-boilerplate generator for Flutter ThemeExtension classes.

Define your theme as an annotated abstract class. The generator creates the full immutable implementation with constructor, fields, copyWith, lerp and more.


Installation #

flutter pub add \
  easy_theme_extension \
  dev:easy_theme_extension_builder \
  dev:build_runner

Usage #

1. Define your theme contract #

@easyTheme
abstract class _MyTheme {
  Color? get primary;
  Color? get secondary;
  EdgeInsets get padding;
}

2. Run the generator #

dart run build_runner build

3. Use the generated extension #

final theme = ThemeData(
  extensions: [
    MyTheme(
      primary: Colors.blue,
      secondary: Colors.red,
      padding: const EdgeInsets.all(16),
    ),
  ],
);

final myTheme = Theme.of(context).extension<MyTheme>()!;
0
likes
0
points
326
downloads

Publisher

verified publisheralbinpk.dev

Weekly Downloads

A zero-boilerplate code generator for Flutter ThemeExtension classes.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

meta

More

Packages that depend on easy_theme_extension