easy_flavor 0.1.1 copy "easy_flavor: ^0.1.1" to clipboard
easy_flavor: ^0.1.1 copied to clipboard

A CLI that sets up Flutter flavors (dev, staging, prod, ...) for Android and iOS in new or existing projects, with optional Firebase integration.

example/README.md

easy_flavor examples #

New app with three flavors #

easy_flavor create my_app \
  --org com.company \
  --flavors dev,staging,prod \
  --bundle-ids dev=com.company.myapp.dev,staging=com.company.myapp.stg,prod=com.company.myapp \
  --app-names dev="MyApp Dev",staging="MyApp Stg",prod="MyApp"
cd my_app
flutter run --flavor dev -t lib/main_dev.dart

Existing app #

cd my_existing_app
easy_flavor init --flavors dev,prod --dry-run --verbose   # preview
easy_flavor init --flavors dev,prod
easy_flavor doctor

Already has hand-made flavors? Adopt them:

easy_flavor init --merge

Firebase per flavor #

easy_flavor init --firebase --firebase-projects dev=myapp-dev,prod=myapp-prod

Change flavors later #

easy_flavor add qa --app-name "MyApp QA"
easy_flavor remove qa
easy_flavor restore          # undo the last run

Configuration file #

easy_flavor.yaml is a complete configuration. Put it at your project root and run easy_flavor init.

Using the flavor in Dart #

import 'flavors.dart';

class Home extends StatelessWidget {
  const Home({super.key});

  @override
  Widget build(BuildContext context) {
    final config = FlavorConfig.instance;
    return Banner(
      message: config.name,
      location: BannerLocation.topEnd,
      child: Text(config.appTitle),
    );
  }
}
0
likes
160
points
--
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A CLI that sets up Flutter flavors (dev, staging, prod, ...) for Android and iOS in new or existing projects, with optional Firebase integration.

Repository (GitHub)
View/report issues

Topics

#flutter #flavors #cli #firebase #build-variants

License

MIT (license)

Dependencies

args, mason_logger, meta, path, yaml, yaml_edit

More

Packages that depend on easy_flavor