Storyboard Generator
Generate visual storyboards for video concepts using Gemini image generation.
Process
1. Gather context
Before generating, establish:
- Product/brand — what's being advertised
- Video angle — the story or concept (e.g. "dead time", "before/after", "day in the life")
- Target audience — who watches this
- Duration — determines number of frames (15s = 3-4 frames, 30s = 5-6 frames, 60s = 8-10 frames)
- Visual style — cinematic, minimalist, illustrated, iPhone-shot, etc.
- Platform — YouTube, X/Twitter, LinkedIn, TikTok (affects aspect ratio and pacing)
2. Write the frame descriptions
Plan each frame before generating:
- Frame number + timing (e.g. "Frame 1 (0-5s)")
- Visual description — what's on screen, camera angle, setting
- Text overlay — any words shown on screen
- Audio note — voiceover, music mood, sound effects
3. Generate storyboard grid
Use the image-from-gemini skill:
python3 ~/.claude/skills/image-from-gemini/scripts/generate.py \
"<prompt>" \
-o /tmp/<project>-storyboard.png
Prompt template:
A cinematic storyboard grid, <rows> rows x <cols> columns, <total> frames total,
for a <duration>-second video ad. <visual style>. Each frame has a small white
number in the corner (1-<total>) and a one-line caption below.
Frame 1: <detailed visual description>
Frame 2: <detailed visual description>
...
Style: <realistic/illustrated/minimalist>. Like frames from <reference style>.
<lighting and mood>.
Grid sizing guide:
- 3-4 frames: 1 row x 3-4 cols
- 5-6 frames: 2 rows x 3 cols
- 8-10 frames: 2-3 rows x 3-4 cols
4. Review and iterate
- Open the image for full-size review
- Discuss which frames work and which need adjustment
- Regenerate with updated descriptions if needed
- Use
-i flag to pass previous storyboard as reference for consistency
5. Write the full script
After visual approval, produce a script document with:
- Frame-by-frame timing
- Voiceover lines (exact words)
- On-screen text
- Music/sound cues
- Camera directions
Save to the project's marketing folder.
Tips
- Be specific about camera angles: "over-the-shoulder", "close-up", "wide shot"
- Mention lighting: "morning light", "blue hour", "overhead fluorescent"
- Include props and wardrobe details for consistency across frames
- For product UI shots, describe the screen content explicitly
- Reference real film styles: "iPhone-shot indie commercial", "Apple product video", "Wes Anderson framing"
- Always include the product name and URL in the final CTA frame
- For phone screens, describe what the UI shows — Gemini renders text and UI elements well at this scale
1---2name: storyboard3description: Generate visual storyboards for video ads, product demos, and marketing videos. Creates a grid of frames with captions using Gemini image generation.4triggers:5 - create a storyboard6 - storyboard for7 - video ad concept8 - shot list9 - video frames10---1112# Storyboard Generator1314Generate visual storyboards for video concepts using Gemini image generation.1516## Process1718### 1. Gather context1920Before generating, establish:21- **Product/brand** — what's being advertised22- **Video angle** — the story or concept (e.g. "dead time", "before/after", "day in the life")23- **Target audience** — who watches this24- **Duration** — determines number of frames (15s = 3-4 frames, 30s = 5-6 frames, 60s = 8-10 frames)25- **Visual style** — cinematic, minimalist, illustrated, iPhone-shot, etc.26- **Platform** — YouTube, X/Twitter, LinkedIn, TikTok (affects aspect ratio and pacing)2728### 2. Write the frame descriptions2930Plan each frame before generating:31- **Frame number + timing** (e.g. "Frame 1 (0-5s)")32- **Visual description** — what's on screen, camera angle, setting33- **Text overlay** — any words shown on screen34- **Audio note** — voiceover, music mood, sound effects3536### 3. Generate storyboard grid3738Use the `image-from-gemini` skill:3940```bash41python3 ~/.claude/skills/image-from-gemini/scripts/generate.py \42 "<prompt>" \43 -o /tmp/<project>-storyboard.png44```4546**Prompt template:**4748```49A cinematic storyboard grid, <rows> rows x <cols> columns, <total> frames total,50for a <duration>-second video ad. <visual style>. Each frame has a small white51number in the corner (1-<total>) and a one-line caption below.5253Frame 1: <detailed visual description>54Frame 2: <detailed visual description>55...5657Style: <realistic/illustrated/minimalist>. Like frames from <reference style>.58<lighting and mood>.59```6061**Grid sizing guide:**62- 3-4 frames: 1 row x 3-4 cols63- 5-6 frames: 2 rows x 3 cols64- 8-10 frames: 2-3 rows x 3-4 cols6566### 4. Review and iterate6768- Open the image for full-size review69- Discuss which frames work and which need adjustment70- Regenerate with updated descriptions if needed71- Use `-i` flag to pass previous storyboard as reference for consistency7273### 5. Write the full script7475After visual approval, produce a script document with:76- Frame-by-frame timing77- Voiceover lines (exact words)78- On-screen text79- Music/sound cues80- Camera directions8182Save to the project's marketing folder.8384## Tips8586- Be specific about camera angles: "over-the-shoulder", "close-up", "wide shot"87- Mention lighting: "morning light", "blue hour", "overhead fluorescent"88- Include props and wardrobe details for consistency across frames89- For product UI shots, describe the screen content explicitly90- Reference real film styles: "iPhone-shot indie commercial", "Apple product video", "Wes Anderson framing"91- Always include the product name and URL in the final CTA frame92- For phone screens, describe what the UI shows — Gemini renders text and UI elements well at this scale