Skills

App Icon

Liquid Glass macOS app icon made as an Icon Composer file (Icon/AppIcon.icon, JSON plus...

Install

npx skills add daveebbelaar/bama --skill app-icon -g -a claude-code -y
Repository
daveebbelaar/bama1.3k
Category
Engineering
Updated
3d ago
License
MIT
Context cost
Lightabout 1,399 tokens
Runs scripts
No, instructions only

What it does

Liquid Glass macOS app icon made as an Icon Composer file (Icon/AppIcon.icon, JSON plus SVG layers), compiled with actool, and reviewed in every look with ictool. Use when the user wants an app icon, a better icon, or a Dock icon.

App icon

The icon is an Icon Composer file in git: Icon/AppIcon.icon, a folder with icon.json and SVG layers in Assets/. You write both by hand. macOS adds the glass, the highlights, the shadow, the mask, and the dark, tinted, and clear looks. You never draw those yourself.

  • tools/make_icon.sh compiles it with actool into Resources/Assets.car and Resources/AppIcon.icns. build.sh runs it when the icon changed.
  • tools/icon_review.sh renders it with ictool (Icon Composer's command line tool, inside Xcode) into one contact sheet you read.

Older app without these files: copy Icon/, tools/make_icon.sh, tools/icon_review.sh, and tools/icon_sheet.swift from the new-mac-app template, the icon block of its build.sh, and CFBundleIconName = AppIcon from its Info.plist.in.

Other cases: more-cases.md.

  • An Xcode or XcodeGen project (Xcode compiles the .icon itself).
  • Converting an existing flat icon into layers.
  • A Dock icon that changes with a theme or style. NSApp.applicationIconImage shows a flat picture, so render glass versions ahead of time.

The file

Icon/AppIcon.icon/
  icon.json
  Assets/front.svg     1024 x 1024 canvas, same as the icon
  Assets/back.svg
{
  "fill" : { "automatic-gradient" : "srgb:0.20000,0.42000,0.96000,1.00000" },
  "groups" : [
    {
      "layers" : [
        { "glass" : true, "image-name" : "front.svg", "name" : "front" },
        { "glass" : true, "image-name" : "back.svg", "name" : "back", "opacity" : 0.6 }
      ],
      "shadow" : { "kind" : "neutral", "opacity" : 0.5 },
      "translucency" : { "enabled" : true, "value" : 0.5 }
    }
  ],
  "supported-platforms" : { "squares" : [ "macOS" ] }
}
Read the whole SKILL.md on GitHub

More in Engineering