Agent skill
icon-creation
Generate browser extension icons at multiple sizes (16x16, 32x32, 48x48, 128x128) from SVG files. Use when creating new extension icons, converting SVG to PNG icons, or when user mentions extension icons, icon generation, or icon sizes.
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/development/icon-creation-oaustegard-browser-extensions
SKILL.md
Icon Creation for Browser Extensions
This Skill helps generate browser extension icons at the required sizes from SVG source files.
When to Use This Skill
Use this Skill when:
- Creating icons for a new browser extension
- Converting SVG designs to PNG icons at multiple sizes
- User mentions "extension icon", "icon generation", or "icon sizes"
- Need to generate 16x16, 32x32, 48x48, and 128x128 PNG icons
Quick Start
Option 1: Generate from text/emoji (fastest)
bash
npm install canvas
node generate-icons.js "A" # Single letter
node generate-icons.js "🎨" # Emoji
node generate-icons.js "X" "#000" "#0f0" # Custom colors
Option 2: Create custom SVG design
- Edit icon.svg - Modify the text element or create custom graphics
- Generate PNGs: See README.md for conversion methods (Inkscape, ImageMagick, online tools)
Icon Size Requirements
Browser extensions require icons at these sizes:
- 16x16 - Browser toolbar (smallest)
- 32x32 - Browser toolbar (retina displays)
- 48x48 - Extension management page
- 128x128 - Chrome Web Store and extension installation
Design Tips
- Use the full 128x128 canvas - Make primary elements large and bold
- Test at 16x16 - Ensure icon is readable at smallest size
- Simple, bold shapes - Avoid thin lines that disappear when scaled down
- High contrast - Ensure icon stands out on light and dark backgrounds
Generation Methods
Method 1: Node.js Script (Recommended)
bash
npm install canvas
node generate-icons.js
Method 2: Other Tools
For Inkscape, ImageMagick, or online tools, see README.md.
Complete Documentation
- USAGE.md - Full usage documentation and framework details
- README.md - Alternative generation methods
Example Workflows
Text/Emoji Icon
bash
cd my-extension
npm install canvas
node path/to/generate-icons.js "📧" # Email icon
Custom SVG Icon
- Copy and edit
icon.svgfrom this skill directory - Modify the
<text>element or add custom graphics - Convert using Inkscape/ImageMagick (see README.md)
Reference in manifest.json
json
"icons": {
"16": "icon16.png",
"32": "icon32.png",
"48": "icon48.png",
"128": "icon128.png"
}
Customization Examples
Single letter icons:
node generate-icons.js "A"node generate-icons.js "T"node generate-icons.js "𝔉"(Unicode characters)
Emoji icons:
node generate-icons.js "🎨"(art/design)node generate-icons.js "📝"(notes/writing)node generate-icons.js "🔧"(tools/settings)
Custom colors:
node generate-icons.js "X" "#1a1a1a" "#00ff00"(dark bg, green text)node generate-icons.js "!" "#ff0000" "#ffffff"(red bg, white text)
Didn't find tool you were looking for?