local-build
Build a release APK and a simulator .app file locally for a React Native Expo app using gradlew and xcodebuild. Use when the user…
Generate app icons for your React Native Expo app with iOS 26 support
$ npx -y skills add Code-with-Beto/skills --skill app-icon --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/app-iconContext preview
The summary Claude sees to decide when to auto-load this skill.
Generate app icons for your React Native Expo app with iOS 26 support
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.
[SnapAI](https://github.com/betomoedano/snapai) is a free, open-source CLI built by the [Code with Beto](https://codewithbeto.dev) team. It calls the selected image provider directly using the user's API key. A key can be stored locally at `~/.snapai/config.json` or supplied through an environment variable. SnapAI ships no telemetry and has no backend server.
**Before attempting to generate icons, check if SnapAI is configured:**
1. Check if SnapAI is configured:
npx snapai config --show
2. **If the config check fails or shows no API key:**
3. **If the user has an API key:**
npx snapai config --openai-api-key "<their-api-key>"
npx snapai config --show
4. **If the user needs to get an API key:**
1. Create an OpenAI account if you don't have one 2. Navigate to API keys section 3. Click 'Create new secret key' 4. Copy the key (starts with 'sk-') 5. Configure it locally without sharing it in chat"
**Important Notes:**
Ask the user what style they'd like for the icon. Available styles:
Or 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:**
The icon will be saved to `./assets/icon-[timestamp].png`
Create the new iOS 26 Liquid Glass icon format:
1. Create the folder structure:
mkdir -p assets/app-icon.icon/Assets
2. Copy the generated PNG:
cp assets/icon-[timestamp].png assets/app-icon.icon/Assets/icon.png
3. Create `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 magick 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 magick -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
Professional agent skills and plugins to help mobile developers ship better apps faster with AI assistance.
Build a release APK and a simulator .app file locally for a React Native Expo app using gradlew and xcodebuild. Use when the user…
Scaffold production-ready React Native apps using the @codewithbeto/ship CLI. Use when the user wants to create a new app from a…
Scaffold a unified, cross-platform color theme system into an Expo Router app. Sets up semantic system colors (resolved from…