icons_launcher 3.1.0

SDKdartflutter
Platformandroidioswindowslinuxmacos

A command-line tool that simplifies the task of updating your Flutter app's launcher icon.

🍃 Icons Launcher 🍃

A command-line tool that simplifies the task of updating your Flutter app's launcher icon. Full flexibility allows you to only update the launcher icon for specific platforms as needed.


icons launcher preview

Platform Support

AndroidiOSmacOSWebLinuxWindows

Guide

1. Setup the config file

Add your Icons Launcher configuration to your pubspec.yaml or create a new config file called icons_launcher.yaml.

An example is shown below. More complex examples here.

Add config to pubspec.yaml or create a separate icons_launcher.yaml

icons_launcher:
  image_path: "assets/ic_logo_radius.png"
  platforms:
    android:
      enable: true
    ios:
      enable: true

Note For IOS 18 icons dark and tinted also supported. See more on example config below.

2. Run the package

After setting up the configuration, all that is left to do is run the package:

flutter pub get
dart run icons_launcher:create

If you name your configuration file something other than icons_launcher.yaml or pubspec.yaml you will need to specify the name of the file when running the package.

flutter pub get
dart run icons_launcher:create --path <your config file name here>

Note

If you are not using the existing pubspec.yaml your config file must still be located in the same directory as it.

If you encounter any issues please report them here.

In the above configuration, the package is setup to replace the existing launcher icons in both the Android and iOS project.


Attributes

Shown below is the full list of attributes which you can specify within your Icons Launcher configuration.

Icons Launcher OptionTypeDefaultDescription
image_pathStringnullThe image file path
platformsObjectnullUse for specific platforms to generate icons

Platforms OptionTypeDefaultDescription
androidObjectnullUse for specific Android platform
iosObjectnullUse for specific iOS platform
macosObjectnullUse for specific macOS platform
windowsObjectnullUse for specific Windows platform
webObjectnullUse for specific Web platform
linuxObjectnullUse for specific Linux platform
Android OptionTypeDefaultDescription
enableBooleanfalseUse for enable Android platform
image_pathStringnullThe image file path
notification_imageStringnullImage for the notification icon
adaptive_background_colorStringnullColor for fill out the background of the adaptive icon
adaptive_background_imageStringnullImage for fill out the background of the adaptive icon
adaptive_foreground_imageStringnullImage for the icon foreground of the adaptive icon
adaptive_round_imageStringnullImage for the round icon of the adaptive icon
adaptive_monochrome_imageStringnullImage for the monochrome version of the adaptive icon
iOS OptionTypeDefaultDescription
enableBooleanfalseUse for enable iOS platform
image_pathStringnullThe image file path
dark_pathStringnullThe dark image file path
tinted_pathStringnullThe tinted image file path
Web OptionTypeDefaultDescription
enableBooleanfalseUse for enable Web platform
image_pathStringnullThe image file path
maskable_image_pathStringnullThe maskable image file path for PWA
favicon_pathStringnullThe image file path
favicon_output_extensionString.pngExtension for favicon .png or .ico
macOS OptionTypeDefaultDescription
enableBooleanfalseUse for enable macOS platform
image_pathStringnullThe image file path
Windows OptionTypeDefaultDescription
enableBooleanfalseUse for enable Windows platform
image_pathStringnullThe image file path
Linux OptionTypeDefaultDescription
enableBooleanfalseUse for enable Linux platform with snapcraft
image_pathStringnullThe image file path

Flavor support

Create a Icons Launcher configuration file for your flavor. The config file is called icons_launcher-<flavor>.yaml by replacing <flavor> by the name of your desired flavor.

Example: icons_launcher-dev.yaml and icons_launcher-prod.yaml

Run with flavor:

flutter pub get
# create for dev flavor
dart run icons_launcher:create --flavor dev

# create for prod flavor
dart run icons_launcher:create --flavor prod

Alternatively, you can run multiple flavors at the same time with the following command:

dart run icons_launcher:create --flavors dev,prod

The configuration file format is the same.


Example

icons_launcher:
  platforms:
    android:
      enable: true
      image_path: "assets/ic_logo_radius.png"
      notification_image: "assets/ic_foreground.png"
      # adaptive_background_color: "#ffffff"
      adaptive_background_image: "assets/ic_background.png"
      adaptive_foreground_image: "assets/ic_foreground.png"
      adaptive_round_image: "assets/ic_logo_round.png"
      adaptive_monochrome_image: "assets/ic_black_white.png"
    ios:
      enable: true
      image_path: "assets/ic_logo_rectangle_light.png"
      # For iOS 18+ (support dark and tinted)
      dark_path: "assets/ic_logo_rectangle_dark.png"
      tinted_path: "assets/ic_logo_rectangle_tinted.png"
    web:
      enable: false
      image_path: "assets/ic_logo_rectangle_light.png"
      maskable_image_path: "assets/ic_logo_radius.png"
      favicon_path: "assets/ic_logo_round.png"
      # favicon_output_extension: ".ico"
    macos:
      enable: false
      image_path: "assets/macos_icon.png"
    windows:
      enable: false
      image_path: "assets/ic_logo_radius.png"
    linux:
      enable: false
      image_path: "assets/ic_logo_radius.png"

Activities

Alt