一键导入
app-icon
Generate app icons for your React Native Expo app with iOS 26 support
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Generate app icons for your React Native Expo app with iOS 26 support
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | app-icon |
| description | Generate app icons for your React Native Expo app with iOS 26 support |
Generate professional app icons using AI and configure them for both iOS (with iOS 26 Liquid Glass support) and Android platforms in Expo apps.
Before attempting to generate icons, check if SnapAI is configured:
npx snapai config --show
If the config check fails or shows no API key:
If the user has an API key:
snapai config --api-key <their-api-key>
snapai config --show
If the user needs to get an API key:
Important Notes:
app.json to understand the app name and current icon configurationAsk the user what style they'd like for the icon. Available styles:
minimalism - Clean, Apple-inspired minimalism (2-3 colors max)glassy - Premium glass aesthetic with semi-transparent elementsgradient - Vibrant gradients, Instagram-inspiredneon - Cyberpunk, futuristic with glowing effectsmaterial - Google Material Designios-classic - Traditional iOS with subtle gradientspixel - Retro 8-bit/16-bit game art stylegeometric - Bold, angular compositionsOr let the user provide a custom style description.
Pre-flight check: Verify SnapAI is configured before running (see Step 0)
Generate a 1024x1024 icon with transparent background (critical for both platforms):
npx snapai icon --prompt "YOUR_PROMPT_HERE" --background transparent --output-format png --style STYLE_NAME
Important flags:
--background transparent - REQUIRED for iOS 26 and Android adaptive icons--output-format png - Ensures PNG format--style - Optional, enhances the visual style--quality high - Optional, for final production iconsThe icon will be saved to ./assets/icon-[timestamp].png
Create the new iOS 26 Liquid Glass icon format:
mkdir -p assets/app-icon.icon/Assets
cp assets/icon-[timestamp].png assets/app-icon.icon/Assets/icon.png
assets/app-icon.icon/icon.json with this basic configuration:{
"fill": "automatic",
"groups": [
{
"layers": [
{
"glass": false,
"image-name": "icon.png",
"name": "icon"
}
],
"shadow": {
"kind": "neutral",
"opacity": 0.5
},
"translucency": {
"enabled": true,
"value": 0.5
}
}
],
"supported-platforms": {
"circles": ["watchOS"],
"squares": "shared"
}
}
Android adaptive icons have a smaller safe area (~66% of the canvas) compared to iOS. The main icon generated by SnapAI is optimized for iOS safe areas, which means it may appear too large and get clipped on Android devices with circular or squircle masks.
To ensure your icon displays correctly on all Android device shapes (circles, squircles, rounded squares), create a scaled-down version:
Using ImageMagick (recommended):
# Scale the icon to 66% and center it on a 1024x1024 transparent canvas
convert assets/icon-[timestamp].png \
-resize 66% \
-gravity center \
-background transparent \
-extent 1024x1024 \
assets/android-icon.png
Alternative - Using sips + ImageMagick (macOS):
# Step 1: Resize to 66% (676x676)
sips -Z 676 assets/icon-[timestamp].png --out /tmp/icon-resized.png
# Step 2: Create the final centered image
convert -size 1024x1024 xc:transparent /tmp/icon-resized.png \
-gravity center -composite assets/android-icon.png
Note: If ImageMagick is not installed, install it with:
brew install imagemagick
Update the app.json to configure icons for both platforms:
{
"expo": {
"ios": {
"icon": "./assets/app-icon.icon"
}
}
}
Use the Android-optimized icon created in Step 4.5:
Option 1: Simple (with solid background color)
{
"expo": {
"android": {
"adaptiveIcon": {
"foregroundImage": "./assets/android-icon.png",
"backgroundColor": "#ffffff"
}
}
}
}
Option 2: Comprehensive (recommended) Since the icon has a transparent background, you can use it for all three Android adaptive icon fields:
{
"expo": {
"android": {
"adaptiveIcon": {
"foregroundImage": "./assets/android-icon.png",
"backgroundImage": "./assets/android-icon.png",
"monochromeImage": "./assets/android-icon.png"
}
}
}
}
Benefits of Option 2:
foregroundImage - Main icon displayedbackgroundImage - Provides layered depth effect on Android 8.0+monochromeImage - Used for themed icons on Android 13+ (automatically recolored by system)Note:
backgroundColor, or use white (#ffffff) as defaultls -la assets/app-icon.icon/
cat app.json | jq .
npx expo prebuild --clean
npx expo run:ios
npx expo run:android
.icon folder enables Liquid Glass effects on iOS 26+icon-[timestamp].png - Main icon optimized for iOS safe areas (used in .icon folder)android-icon.png - Scaled to 66% and centered for Android adaptive icon safe areasandroid-icon.png can be used for foregroundImage, backgroundImage, AND monochromeImage fields.icon folder name can be customized (e.g., app-icon.icon, myapp.icon)snapai config --api-key <key> to set it upnpx snapai (not just snapai)npx expo prebuild --clean to regenerate native projects after icon changesbrew install imagemagick