Breaking changes
- Cordova mode targets cordova-android 11+ and cordova-ios 8+ only. Those platform generations replaced the old splash images with a single splash icon (Android) and the long icon list with one 1024px icon plus appearance variants (iOS). Projects on older cordova-android / cordova-ios releases should stay on Icon Genie v6. Running
generateon an upgraded project rewrites the assets andconfig.xmlfor the new layout: the twelve Android splash images, the 23-entry iOS icon list and the~iphone/~ipadlaunch images are deleted, theirconfig.xmlentries are pruned along with the legacy Android<splash>entries and theSplashMaintainAspectRatiopreference, andcordova-plugin-splashscreenis no longer installed (cordova-android 11+ ships the splash screen API itself; existing projects can remove the plugin). - Capacitor mode no longer depends on
@capacitor/assets. Icon Genie now generates the native Android and iOS assets itself (see below), so nothing is installed into or spawned from/src-capacitoranymore except@capacitor/splash-screenwhen missing. Existing projects can drop@capacitor/assetsfrom/src-capacitor/package.jsonand delete the now unused/src-capacitor/assetsfolder (icon.png+splash.png). - Windows ICO files changed layout (
icon.icoandfavicon.ico): the 16/24/32/48px entries are stored as plain bitmaps, the larger sizes stay PNG-compressed. Regenerate to pick it up; nothing else to do.
New
- feat(icongenie): capacitor mode -> own implementation of the native assets, matching the Capacitor 8 project templates file for file: the adaptive icon layers (foreground fitted to the safe zone, background from
--backgroundor a flat--png-colorfill, legacy and round icons), the splash drawables for every density, the 1024px iOS icon and the threeSplash.imagesetimages; themipmap-anydpi-v26adaptive icon XML files and everyContents.jsonare updated in place (written in Xcode's own serialization, so they no longer churn on each run);verifycovers the new files and their mount status;capacitor-android/capacitor-iosassets are skipped with a warning when the platform folder does not exist yet, so a latercap addstill works - feat(icongenie): new
--splashscreen-dark-colorparam -> generates the dark variants (Androidnightdrawables, iOS dark-appearance images, Cordova~darklaunch images); when it is not set, previously generated dark variants are removed so the project always reflects the current params - feat(icongenie): new
--background-darkparam -> the image for the dark splashscreen variants (falls back to--background, so existing usage is unchanged); before, an opaque--backgroundmade the dark color invisible - feat(icongenie): new
--icon-monochromeparam -> the Android adaptive icon now gets its monochrome layer (Android 13+ themed icons), by default the silhouette of the icon source fitted to the safe zone, or this file when the silhouette is not the right shape;verifychecks the layer reference like the other ones - feat(icongenie): cordova mode -> current-platform asset set: Android adaptive icon layers (foreground, background, monochrome) plus the legacy icon per density on one
<icon>entry, the 960px splash icon with itsAndroidWindowSplashScreenAnimatedIcon/AndroidWindowSplashScreenBackgroundpreferences; iOSicon.png,icon-dark.pngandicon-tinted.pngplus the six~universallaunch storyboard images (and their~darkvariants under--splashscreen-dark-color) - feat(icongenie): pwa mode ->
icon-maskable-512x512.pngandicon-monochrome-512x512.pngfor the manifest'spurposeentries; launch images for the iPhone 18 Pro / Pro Max and the iPhone Duo (one image per display), while the 1242x2208 image (iPhone 6 Plus to 8 Plus, all below the iOS 17 floor) is no longer generated - feat(icongenie): bex mode -> the 32px toolbar icon and the 96px Firefox add-ons manager icon
- feat(icongenie): spa/ssr/ssg modes ->
apple-icon-180x180.pngwith itsapple-touch-icontag, for Safari's Add to Home Screen and macOS Add to Dock of a plain website - feat(icongenie): capacitor mode -> the dark and tinted iOS app icon appearances in the asset catalog
- feat(icongenie):
--paddingaccepts percentages ("8%", 0 to 50) next to pixel values, resolved per file against the box being filled, so one value suits a 16px favicon and a 1024px icon at once (#8921); profile files store whatever form was given; the help text no longer has the two values swapped (the first one is horizontal) - feat(icongenie): profile files -> the
launchergenerator, themaskablevariant, thevariant,scale,darkandappearanceasset props and thecordova-android/cordova-ios/capacitor-android/capacitor-iosplatforms;verify -pnormalizes the color params before validating, so a profile with any color no longer fails the#pattern
The @quasar/app-vite v3.10.0+ and create-quasar templates list the new PWA, BEX and SPA icons; existing projects add the purpose entries, the BEX manifest sizes and the apple-touch-icon tag by hand after regenerating.
Fixes
- fix(icongenie): ICO files -> the desktop and shortcut icons of a packaged Electron app no longer show up pixelated with wrong colors on Windows (#16552)
- fix(icongenie): profile -> the command crashed when the output path pointed to a folder that does not exist yet
Donations
Quasar Framework is an open-source MIT-licensed project made possible due to the generous contributions by sponsors and backers. If Quasar is useful in your workflow and you want to support ongoing maintenance, please consider the following: