Generate iOS app icons as PNG imagesets for Xcode asset catalogs from SF Symbols (5000+ Apple-native) or Iconify API (275k+ open source icons from 200+ collections). Use when generating icons, creating icon assets, adding icons to asset catalog, or searching for icons for iOS projects.
75
93%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Generate PNG icon imagesets for Xcode asset catalogs from two sources.
Both sources produce identical Xcode-compatible imagesets. Choose based on need:
| Source | Icons | Requires | Best for |
|---|---|---|---|
| Iconify API | 275,000+ from 200+ collections | Internet | Wide selection, specific styles, open source icons |
| SF Symbols | 5,000+ Apple symbols | macOS only | Apple-native style, offline use |
Before generating, check the project's existing icons for size, color, and weight consistency.
Both methods produce a complete Xcode imageset:
<output-dir>/<asset-name>.imageset/
Contents.json
<asset-name>.png # 1x (68px default)
<asset-name>@2x.png # 2x (136px default)
<asset-name>@3x.png # 3x (204px default)Determine icon needs: what the icon represents, preferred style, target color, and size.
If the project already has icons, check existing style:
# Check dimensions of existing icon
sips -g pixelWidth -g pixelHeight path/to/existing@2x.pngIconify API (recommended for wide selection):
# Search all collections
$SKILL_DIR/scripts/iconify_gen.sh search "receipt"
# Search within a specific collection
$SKILL_DIR/scripts/iconify_gen.sh search "business card" --prefix mdi
# List available collections
$SKILL_DIR/scripts/iconify_gen.sh collectionsSF Symbols (for Apple-native style): Browse the SF Symbols app or reference common names:
| Use Case | Symbol Name |
|---|---|
| Document | doc.text, doc.fill |
| Receipt | doc.text.below.ecg, receipt |
| Person | person.crop.rectangle, person.text.rectangle |
| Camera | camera, camera.fill |
| Scan | doc.viewfinder, qrcode.viewfinder |
| Settings | gearshape, slider.horizontal.3 |
# Iconify preview
$SKILL_DIR/scripts/iconify_gen.sh preview mdi:receipt-text-outlineIconify API:
# Basic generation
$SKILL_DIR/scripts/iconify_gen.sh mdi:receipt-text-outline editTool_expenseReport
# Custom color and output location
$SKILL_DIR/scripts/iconify_gen.sh mdi:receipt-text-outline myIcon --color 007AFF --output ./Assets.xcassets/iconsOptions: --size <pt> (default: 68), --color <hex> (default: 8E8E93), --output <dir> (default: /tmp/icons)
SF Symbols:
# Basic generation
swift $SKILL_DIR/scripts/generate_icons.swift doc.text.below.ecg editTool_expenseReport
# Custom color, weight, and output
swift $SKILL_DIR/scripts/generate_icons.swift person.crop.rectangle myIcon --color 007AFF --weight regular --output ./Assets.xcassets/iconsOptions: --size <pt> (default: 68), --color <hex> (default: 8E8E93), --weight <name> (default: thin), --output <dir> (default: /tmp/icons)
cp -r /tmp/icons/<name>.imageset path/to/Assets.xcassets/<group>/| Prefix | Name | Count | Style |
|---|---|---|---|
mdi | Material Design Icons | 7400+ | Filled + outline variants |
ph | Phosphor | 9000+ | 6 weights per icon |
solar | Solar | 7400+ | Bold, linear, outline |
tabler | Tabler Icons | 6000+ | Consistent stroke width |
lucide | Lucide | 1700+ | Clean, minimal |
ri | Remix Icon | 3100+ | Filled + line variants |
carbon | Carbon | 2400+ | IBM design language |
heroicons | HeroIcons | 1200+ | Tailwind CSS companion |
Browse all: https://icon-sets.iconify.design/
| Script | Source | Path |
|---|---|---|
iconify_gen.sh | Iconify API (275k+ icons) | $SKILL_DIR/scripts/iconify_gen.sh |
generate_icons.swift | SF Symbols (5k+ icons) | $SKILL_DIR/scripts/generate_icons.swift |
--output ./Assets.xcassets/icons to skip manual copying754b8dd
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.