Generate app icon artwork and Google Play feature graphics from the terminal with OpenAI or Google Gemini. SnapAI is built for React Native and Expo developers, but the generated assets work with any mobile stack.
Quick start · Agent skill · Feature guide · Examples · CLI reference · Changelog · Learn React Native

▶ Watch the SnapAI video tutorial
| Asset | Output | Command |
|---|---|---|
| App icon artwork | 1024x1024 |
snapai icon |
| Google Play feature graphic | 1024x500 |
snapai feature-graphic or snapai fg |
- OpenAI and Gemini image models behind one consistent CLI
- Prompt enhancement tuned for mobile app artwork
- Built-in styles, custom style hints, and raw prompt control
- Prompt previews before spending API credits
- Multiple variations with supported models
- No SnapAI account, backend, telemetry, or tracking
SnapAI requires Node.js 18 or newer and an API key from OpenAI or Google AI Studio.
Install the Code with Beto App Icon skill with one command:
npx skills add https://github.com/code-with-beto/skills --skill app-iconRun the command yourself, or paste it into Codex, Claude Code, or another skills-compatible agent. Then describe what you want in natural language:
Create an app icon for my Expo app. It is a habit tracker that feels calm,
friendly, and modern. Generate the icon assets and configure app.json for
iOS and Android.
The skill uses SnapAI to generate the artwork, prepares the Expo icon assets, and updates the iOS and Android configuration. See the agent setup options and workflow.
# See every command without installing
npx snapai --help
# Save an OpenAI key locally
npx snapai config --openai-api-key "sk-your-openai-api-key"
# Generate your first icon
npx snapai icon --prompt "minimalist weather app with sun and cloud"Images are saved to ./assets by default.
Prefer Gemini? Configure a Google key and select a Banana model:
npx snapai config --google-api-key "your-google-ai-studio-key"
npx snapai icon \
--prompt "music player with an abstract sound wave" \
--model bananaYou can also install SnapAI globally:
npm install -g snapaiJump directly to the feature you need:
| Feature | Guide |
|---|---|
| Generate app icons | App icon generation |
| Generate Google Play banners | Feature graphics |
| Choose an OpenAI or Gemini model | Models |
| Generate multiple variations | Variations |
| Control quality, background, and format | Output controls |
| Preview or bypass prompt enhancement | Prompt controls |
| Use built-in or custom styles | Styles |
| Add a name or logo to a Play banner | Banner branding |
| Configure keys and custom endpoints | Configuration |
| Run SnapAI in CI | GitHub Actions |
| Look up every option | CLI reference |
| Browse real outputs | Generated examples |
# Default OpenAI model
npx snapai icon --prompt "fitness tracker with a heart-rate symbol"
# Three high-quality variations
npx snapai icon \
--prompt "premium banking app with a secure lock" \
--model gpt-2 \
--quality high \
-n 3
# Gemini with a style
npx snapai icon \
--prompt "music player with an abstract sound wave" \
--model banana \
--style glassy
# Preview the enhanced prompt without generating
npx snapai icon \
--prompt "calculator app" \
--style minimalism \
--prompt-only# Basic 1024x500 banner
npx snapai fg --prompt "fitness tracker with energetic green gradients"
# Add an app name
npx snapai fg \
--prompt "fitness tracker with energetic green gradients" \
--app-name "FitTrack"
# Composite an existing logo
npx snapai fg \
--prompt "clean productivity banner with space on the left" \
--logo ./assets/icon.png \
--logo-position left| SnapAI option | Provider model | Commands | Notes |
|---|---|---|---|
gpt-2 |
OpenAI gpt-image-2 |
Icon, feature graphic | Default; no transparent background |
gpt-1.5 |
OpenAI gpt-image-1.5 |
Icon, feature graphic | Previous OpenAI generation |
gpt-1 |
OpenAI gpt-image-1 |
Icon, feature graphic | Previous OpenAI generation |
banana |
Gemini gemini-2.5-flash-image |
Icon, feature graphic | One image |
banana-2 |
Gemini gemini-3.1-flash-image-preview |
Icon, feature graphic | One image, optional thinking level |
banana --pro |
Gemini gemini-3-pro-image-preview |
Icon, feature graphic | Multiple images and 1K/2K/4K quality |
The official gpt-image-2 model ID and its gpt-image-2-2026-04-21 snapshot are also accepted.
For provider-specific behavior and examples, see the icon guide and feature graphic guide.
SnapAI is built by Code with Beto, where I teach developers how to build and ship production-ready React Native apps.
- Learn React Native — the complete course with lifetime access and real-world projects
- Get Pro Access — production codebases, future courses, Figma files, and priority support
- Watch on YouTube for practical React Native, Expo, and AI tutorials
- Join the Discord community or newsletter
| OpenAI | Gemini |
|---|---|
Browse the full gallery and copy the commands →
- Requests go directly from your machine to the provider you select.
- SnapAI does not run a backend or collect prompts and images.
- Local configuration is only created when you save a key.
- Use environment variables or repository secrets in CI, and never commit API keys.
Read the full configuration and security guide.
- Code with Beto App Icon agent skill
- Report a bug or request a feature
- Contributing guide
- Development setup
- Publishing guide
- Changelog
MIT