About nano-banana-poster
nano-banana-poster is a command-line skill for generating poster images with Google's Gemini model. It supports configurable aspect ratios and optional reference images, and can save selected results to a gallery.
Key features
- 01Gemini image generation
- 02Configurable aspect ratios
- 03Optional reference images
- 04Save results to a gallery
- 05Hebrew and RTL prompt guidance
Use cases
- 01Generate a landscape poster
- 02Create vertical story artwork
- 03Use images as generation references
- 04Save images for style reference
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ aviz85/ claude-skills-library --skill nano-banana-posterAfter installing, type/nano-banana-posterin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
SETUP.mdreferences/brand_style.txtscripts/.env.examplegenerate_poster.tspackage.jsontsconfig.jsonDetails
From the project READMENano Banana Poster Generator
First time? If
setup_complete: falseabove, run./SETUP.mdfirst, then setsetup_complete: true.
Generate images using Google's Gemini model with optional reference assets.
Quick Start
cd ~/.claude/skills/nano-banana-image/scripts
# Basic generation (default 3:2 horizontal)
npx ts-node generate_poster.ts "A futuristic city at sunset"
# With aspect ratio (3:2 horizontal, 2:3 vertical, 16:9 wide, 9:16 tall)
npx ts-node generate_poster.ts --aspect 3:2 "A wide landscape poster"
npx ts-node generate_poster.ts -a 9:16 "A vertical story format"
# With reference assets
npx ts-node generate_poster.ts --assets "my-logo" "Create banner with logo"
# Combined: aspect ratio + assets
npx ts-node generate_poster.ts --aspect 16:9 --assets "logo" "YouTube thumbnail"
Aspect Ratio
IMPORTANT: Always use the default 3:2 aspect ratio unless the user explicitly requests a different format (like "vertical", "story", "square", etc.). Do NOT change the aspect ratio on your own.
Control image dimensions with --aspect or -a:
| Ratio | Use Case |
|---|---|
3:2 | Horizontal (DEFAULT - use this unless user specifies otherwise) |
1:1 | Square - Instagram, profile pics |
2:3 | Vertical - Pinterest, posters |
16:9 | Wide - YouTube thumbnails, headers |
9:16 | Tall - Stories, reels, TikTok |
npx ts-node generate_poster.ts --aspect 3:2 "Your prompt"
npx ts-node generate_poster.ts -a 16:9 "Your prompt"
Adding Assets
Use --assets with full paths to include reference images:
# Single asset
npx ts-node generate_poster.ts --assets "/full/path/to/image.jpg" "Your prompt"
# Multiple assets (comma-separated)
npx ts-node generate_poster.ts --assets "/path/a.jpg,/path/b.png" "Use both images"
Supported formats: .jpg, .jpeg, .png, .webp, .gif
IMPORTANT: Assets are NOT automatically included. You must explicitly pass them via --assets.
Save to Gallery
Save good results for future style reference:
npx ts-node generate_poster.ts --save-to-gallery "my-style" "prompt"
Creates assets/gallery/my-style.jpg + .meta.json with prompt info.
API Configuration
Create scripts/.env:
GEMINI_API_KEY=your_api_key_here
Hebrew/RTL Content
When generating images with Hebrew text:
ALWAYS include in prompt:
CRITICAL: All text must be in Hebrew.
CRITICAL: Layout direction is RTL (right-to-left).
Flow, reading order, and visual hierarchy must go from RIGHT to LEFT.
This ensures text renders correctly and visual flow matches Hebrew reading direction.
Output
- Files saved as
poster_0.jpg,poster_1.jpg, etc. - Aspect ratio: Configurable via
--aspect(default: 3:2) - Quality: 1K (1024px on longest edge)