| name | travel-country-poster |
| description | Generates photorealistic, cinematic single-frame "country posters" — one blended composite image per country/city that seamlessly fuses its most iconic landmarks, food, nature, and culture into a unified golden-hour scene, with the national flag billowing pole-less across the upper-left sky. Style was tuned for a school-fair display, but works for any travel-poster / country-card use case. |
| when_to_use | Use when the user asks for a "country image", "city image", "travel poster", "country card", "school fair image" for a country or city, OR says things like "make me an image for X" where X is a country / city / region and the goal is a single iconic visual that screams "X" at a glance. |
| model | claude-haiku-4-5-20251001 |
| effort | low |
| argument-hint | ["Japan","Paris --output paris.jpg","Brazil --no-flag"] |
| allowed-tools | Read Bash Glob Grep AskUserQuestion |
| metadata | {"kind":"generator","capability":"media.image.country-poster","effects":"external","tier":"composed","created":"2026-05-19T00:00:00.000Z","bundles":["scripts/nano-banana.mjs"]} |
Travel Country Poster Generator
Produces a single photorealistic editorial photograph per country / city / region. Multiple iconic elements are blended into one cohesive cinematic scene — not a grid collage, not separate panels. The national flag billows across the upper-left sky with no visible flagpole, acting as a subtle identifier rather than a focal point.
Pipeline
This skill drives the bundled scripts/nano-banana.mjs (a thin wrapper around Google's Gemini 3 Pro Image API). It calls the script with:
- Model:
gemini-3-pro-image-preview (Nano Banana Pro). Do not use Flash/Nano Banana 2 — fidelity drops sharply for multi-landmark compositions.
- Aspect:
16:9 (the style was designed for this; other ratios break the composition balance).
- Size:
2K (delivers ~2752×1536 — large enough for print at A3, social, and projection).
- Output: JPEG. The API returns JPEG regardless of extension; the script auto-renames
.png → .jpg.
Critical Style Rules
These are what make the result feel like a polished travel poster rather than a tourist mashup. Follow them all.
- Single unified scene, never a grid. Phrases to include: "single sweeping unified scene, no panels, no borders, no grid layout, no collage". Even one stray "panel" or "frame" in the prompt makes the model fall back to a grid.
- Seamless blending. Phrase: "seamlessly blend [city]'s most iconic landmarks into one cohesive vista". Reinforce with "natural artistic transitions" and "atmospheric haze tying everything together".
- Golden hour light, every time. This is what unifies elements from different real-world locations. Phrase: "warm golden hour light", "soft pastel sky with wisps of cloud", "warm rich cinematic tones". Skip golden hour and the scene fragments visually.
- Pole-less flag across the upper-left third. Phrase: "Large [country] flag (describe colours/pattern) billowing dramatically across the upper-left third of the sky with no visible flagpole, fabric rippling with realistic folds, semi-translucent edges integrating naturally". A flagpole always looks pasted on. "Semi-translucent edges" prevents the hard-cutout look.
- Position elements spatially in the prompt. Always say "in the foreground left", "behind it across the cityscape", "in the mid-ground", "in the lower right foreground" — never just "show X and Y and Z". Without spatial cues the model crowds everything to the center.
- One food / drink item in the lower-right foreground. A small café table with a signature dish anchors the composition and grounds the scale. (e.g. baguette+croissant for France, pizza+pasta+wine for Italy, sushi for Japan, waffles+pralines+beer for Belgium.)
- Camera language for realism. Always end with: "professional editorial travel photography, shot on Canon EOS R5 24mm lens, ultra realistic, color graded with rich cinematic tones, 4K".
- Negative tail, every time. Always end with: "No cartoon, no illustration, no panels, no collage, no text overlays, no captions, no logos, no watermarks". Without this, signs and billboards fill up with garbled text.
- Iterate by editing, never re-generate from scratch. If the user wants the flag smaller, a landmark moved, or a different time of day — call the script's
edit command with the previous output as the reference image and a focused instruction. Regenerating loses the composition you already liked.
- No real, named people. Crowds and silhouettes are fine. Faces (especially of real public figures) are not.
Element Library by Country
Use these as starting points — pick 5-7 elements per country (more crowds the frame, fewer looks thin). Always include: flag + one signature landmark + one food/drink + one nature or culture element.
| Country / Region | Foreground anchor | Skyline / mid | Nature | Culture / food |
|---|
| USA / NYC | Statue of Liberty | Manhattan skyline (Empire State, Chrysler, One WTC), Brooklyn Bridge | Central Park aerial | Yellow checker taxi, Times Square billboards |
| Japan / Tokyo | Tokyo Tower | Mount Fuji, Senso-ji pagoda, torii gate, Shibuya Crossing neon | Cherry blossoms | Shinkansen bullet train, sushi/ramen |
| France / Paris | Eiffel Tower | Arc de Triomphe, Notre-Dame, Louvre pyramid, Sacré-Cœur | Seine + bateau-mouche | Café terrace with baguette + croissant |
| Italy | Colosseum | Leaning Tower of Pisa, Florence Duomo, Venice canal + gondola + Rialto | Tuscan hills with cypress trees | Pizza + pasta + red wine |
| Belgium | Atomium | Grand Place, Bruges canal + stepped-gable houses, Manneken Pis | Ardennes forest village | Waffles + pralines + Trappist beer |
| Oceania | Sydney Opera House + Harbour Bridge | Uluru, Mt. Cook, Great Barrier Reef turquoise | Koala in eucalyptus, kangaroo | Maori tiki + geothermal steam, Polynesian outrigger, palm-fringed beach with thatched fale |
| UK / London | Big Ben + Westminster | Tower Bridge, London Eye, St Paul's, red double-decker bus | Hyde Park | Black cab, red phone box, fish and chips |
| Spain | Sagrada Família | Alhambra, Plaza Mayor, flamenco silhouette, Park Güell mosaics | Andalusian sunflower field | Paella, tapas, sangria |
| Egypt | Great Pyramid + Sphinx | Karnak columns, Abu Simbel | Felucca on the Nile, palm-fringed desert oasis | Hieroglyphic relief, dates + mint tea |
| Brazil | Christ the Redeemer | Sugarloaf Mountain, Copacabana beach, Iguazu Falls | Amazon jungle canopy | Samba feathers, feijoada + caipirinha |
| India | Taj Mahal | Jaipur palaces, Varanasi ghats, Mumbai Gateway | Himalayas in the distance | Spice market, curry thali, sari colours |
When the country isn't in the table: open with the single most-Googled landmark, add one skyline / urban detail, one nature element, one cultural artifact, one food/drink.
Prompt Template
Fill in only the bracketed slots. Everything else is fixed.
Photorealistic editorial travel photograph of [COUNTRY/CITY], a single sweeping cinematic composite that seamlessly blends the location's most iconic landmarks into one cohesive panoramic vista with natural artistic transitions, no panels, no borders, no grid layout, no collage. In the foreground left, [FOREGROUND ANCHOR LANDMARK with 1-line visual description]. Behind it across the [cityscape/landscape], [SKYLINE / MID-GROUND ELEMENT 1 with visual description] and [SKYLINE / MID-GROUND ELEMENT 2]. In the mid-ground, [NATURE OR ADDITIONAL LANDMARK]. In the lower right foreground, [SMALL CAFÉ TABLE or CULTURAL ELEMENT] with [SIGNATURE FOOD / DRINK]. [Optional: 1 extra atmospheric element — animal, vehicle, traditional dress, etc.]. Large [COUNTRY] flag ([FLAG COLOR / PATTERN DESCRIPTION]) billowing dramatically across the upper-left third of the sky with no visible flagpole, fabric rippling with realistic folds, semi-translucent edges integrating naturally. Warm golden hour light, soft pastel sky, atmospheric haze. Ultra detailed, razor-sharp focus throughout, professional editorial travel photography, shot on Canon EOS R5 24mm lens, ultra realistic, color graded with rich cinematic tones, 4K. No cartoon, no illustration, no panels, no collage, no text overlays, no captions, no logos, no watermarks.
Run Command
The repo ships the generator at scripts/nano-banana.mjs. From the repo root:
node scripts/nano-banana.mjs generate "<prompt>" \
--aspect 16:9 --size 2K \
--model gemini-3-pro-image-preview \
--output "<dir>/<country-slug>.jpg"
For iteration on an existing image:
node scripts/nano-banana.mjs edit \
"<focused change, e.g. 'make the flag smaller and tuck it in the upper-left corner'>" \
"<dir>/<previous-output>.jpg" \
--aspect 16:9 --size 2K \
--model gemini-3-pro-image-preview \
--output "<dir>/<country-slug>-v2.jpg"
Workflow
- Confirm subject. Country, city, or region. If multiple, generate one image per subject.
- Pick elements. 5-7 from the table above (or improvise for unlisted countries). Verify each element is recognisably iconic — vague landmarks dilute the poster.
- Slot into the template. Keep the spatial language (foreground left / mid-ground / lower right) — do not freestyle the layout.
- Pick filename.
<country-slug>.jpg, lowercase, kebab-case.
- Generate. Single
generate call with the params above.
- Show the user. Always Read the output file so they see it.
- Iterate via
edit — never re-generate if the user wants tweaks. Use a focused single-change instruction.
Iteration Recipes (tested)
- Flag too prominent →
edit with: "Reposition the flag so it appears smaller and less prominent, tucked in the upper-left corner, gently waving in the sky. Keep all other elements exactly as they are."
- Flag looks pasted (visible pole, hard edges) →
edit with: "Remove the flag and pole. Replace with a large flag billowing across the upper-left sky with no visible flagpole, semi-translucent edges where it meets the sky so it integrates naturally rather than looking pasted on."
- Landmark missing / wrong →
edit with: "Add [LANDMARK] in the [POSITION], with [SHORT VISUAL DESCRIPTION]. Keep all other elements unchanged."
- Wider establishing shot →
edit with: "Re-render as a wider establishing shot revealing more of the surrounding environment. Pull the camera back. Keep the same landmarks and the flag in the same position."
Don'ts
- Don't request photorealism on Flash / Nano Banana 2. Always use
gemini-3-pro-image-preview.
- Don't list landmarks without spatial positioning — the model crowds them.
- Don't use the word "panel", "frame", "tile", or "section" in the prompt. Even once is enough to trigger a grid.
- Don't request "all the iconic things" — pick 5-7. The model degrades past 7 distinct landmarks per frame.
- Don't ask for text in the image (signs, captions, labels). Garbled text always sneaks in. The negative tail blocks most of it; explicit text requests defeat it.
- Don't omit the negative tail.
Reference Outputs
The following files in this directory were produced with this style and can be passed as edit reference images to seed new ones (the model picks up the lighting and composition):
new_york_blended_flag_v3.jpg — the canonical reference (USA / NYC)
tokyo.jpg, paris.jpg, italy.jpg, belgium.jpg, oceania.jpg
Prerequisites
GOOGLE_BANANA_API_KEY set in env (the underlying script reads it). Get one at https://aistudio.google.com/apikey.
- Node.js 18+ (the bundled
scripts/nano-banana.mjs uses native fetch).