# Icon set prompt template

**Default model:** Gemini Pro for finals (best within-set consistency in a single grid call). Gemini Flash for exploration. OpenAI gpt-image-1.5 only when transparent PNGs in one shot are required.

## Required inputs

- List of icons (subjects) — e.g., home, user, settings, search, bell, cart
- Style: line / filled / duotone
- Stroke weight (if line): "1.5px stroke" / "2px stroke" / "3px bold stroke"
- Color: monochrome black / brand color / two-tone palette
- Output: single grid, or one PNG per icon
- Background: transparent / pure white

## Strategy A — single-call grid (best consistency, recommended)

Generate the entire set in one image as a grid, then slice client-side.

### Gemini variant

```
Generate a set of [N] UI icons arranged in a [ROWS]×[COLS] grid on pure
white background. Icons (in reading order, left-to-right, top-to-bottom):
[ICON 1], [ICON 2], [ICON 3], [...]. All icons must share the exact same
style: [STROKE DESCRIPTION — e.g., "2px black stroke, rounded stroke caps,
no fill"], [SIZE GRID — e.g., "24×24 pixel visual grid each"], same optical
weight, [PADDING — e.g., "30% padding around each icon"], centered. Flat 2D
vector aesthetic, suitable for a design system.
```

**Run with:** `--model gemini-3-pro-image-preview --aspect 1:1 --size 2K`.

### OpenAI gpt-image-1.5 variant

```
Create a [ROWS]×[COLS] grid of [N] UI icons, evenly spaced, on plain white
background. Icons (in reading order):
1. [ICON 1]
2. [ICON 2]
3. [ICON 3]
[...]
Style for ALL icons: [STROKE DESCRIPTION], no fill, rounded corners,
centered in each tile at consistent scale, same optical weight. Flat
illustration aesthetic. No overlap, no extra elements, no text labels.
Monochrome [COLOR] on plain white background.
```

**Run with:** `--quality high --size 1024x1024 --background opaque --output-format png`.

## Strategy B — multi-turn, one icon per image

Use when you need clean isolated PNGs (e.g., for an iOS app icon set).

1. Generate the **first icon** with the full style description.
2. For each subsequent icon, attach the first as a reference and prompt:
   ```
   In the exact same style as the attached reference icon (same stroke
   weight, same corner radius, same visual weight, same color), draw a
   [NEXT SUBJECT]. Isolated on pure white background, centered, 30% padding.
   No text.
   ```

**Run with:** `--ref path/to/first-icon.png` for each follow-up call.

## Strategy C — bulk transparent PNGs (gpt-image-1.5 strength)

```
A single minimalist [STYLE] icon of a [SUBJECT]. [STROKE/FILL DESCRIPTION].
Centered on transparent background, 30% padding. Flat 2D vector aesthetic,
suitable for a design system, monochrome [COLOR].
```

**Run with:** `--quality high --size 1024x1024 --background transparent --output-format png`. Loop over the subject list.

## Filled example — 6 UI icons, line style, monochrome

**Brief:** Home, user, settings, search, bell, cart. 2px black stroke, rounded caps, 3×2 grid.

**Gemini Pro prompt:**
```
Generate a set of 6 UI icons arranged in a 3×2 grid on pure white
background. Icons (in reading order, left-to-right, top-to-bottom):
home (house outline), user (head and shoulders), settings (gear), search
(magnifying glass), bell (notification), cart (shopping basket). All icons
must share the exact same style: 2px black stroke (#000000), rounded
stroke caps, no fill, 24×24 pixel visual grid each, same optical weight,
30% padding around each icon, centered. Flat 2D vector aesthetic, suitable
for a design system.
```

## Tips

- For more than 12 icons, split into multiple grid calls of 6-8 icons each. Density above ~12 icons per grid degrades individual icon quality.
- For final delivery, vectorize the raster output (Illustrator Image Trace, VectorizerAI) — these models output rasters, "vector-like" is aesthetic only.
- Slice grids client-side with ImageMagick or Pillow:
  ```bash
  convert grid.png -crop 6x4@ +repage +adjoin tile-%d.png
  ```