Generate stunning 3D food diorama images showcasing a city's culinary heritage through four-quadrant circular layouts with Pop Mart style characters.
Requirements
- nanobanana skill must be installed and configured with GEMINI_API_KEY
- Python 3 with standard libraries
Quick Start
Generate a diorama for a city:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 西安
Features
Visual Style
- Circular base: City's signature food as the platform
- Four quadrants: Morning taste, historical feast, street food, sweet culture
- Pop Mart figures: Miniature chibi characters interacting with oversized food
- Artistic city nameplate: 3D sculpted city name with cultural materials
- Historical elements: Inscriptions, silhouettes, and cultural symbols
- Technical quality: Isometric view, high saturation, ray tracing, 4K capable
Pre-configured Cities
The skill includes detailed food data for:
- Xi'an (Xi'an): Yangrou Paomo, Hulatang, Hulu Ji, Roujiamo, Zenggao
- Chongqing (Chongqing): Hot Pot, Chongqing Xiaomian, Mao Xue Wang, Suan La Fen, Ice Tangyuan
- Chengdu (Chengdu): Dandan Noodles, Douhua, Fuqi Feipian, Zhong Shui Jiao, San Da Pao
- Beijing (Beijing): Zhajiangmian, Douzhi Jiajuan, Peking Roast Duck, Luzhu Huoshao, Aiwowo
- Guangzhou (Guangzhou): Changfen, Shrimp Dumplings, White Cut Chicken, Wonton Noodles, Shuangpinai
List all available cities:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py --list-cities
Usage
Basic Generation
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 重庆
Output: 重庆-diorama.png
Custom Output
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 成都 --output chengdu-food-art.png
High Resolution
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 北京 --resolution 4K --size 1344x768
Preview Prompt
View the generated prompt without creating an image:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 广州 --show-prompt
Options
city(required): City name in Chinese (e.g., 西安, 重庆)--output: Output filename (default:<city>-diorama.png)--size: Image dimensions (default:1024x1024)- Available:
1024x1024,832x1248,1248x832,864x1184,1184x864,896x1152,1152x896,768x1344,1344x768,1536x672
- Available:
--resolution: Image quality (default:2K)- Choices:
1K,2K,4K
- Choices:
--model: Gemini model (default:gemini-3-pro-image-preview)- Alternative:
gemini-2.5-flash-image(faster)
- Alternative:
--show-prompt: Display prompt without generating--list-cities: Show all available cities
Workflow
When a user requests a food diorama:
- Identify the city: Ask which city if not specified
- Check availability: Run with
--list-citiesif unsure - Choose settings: Recommend:
- Square format (
1024x1024) for social media posts - Landscape (
1344x768or1536x672) for wallpapers 2Kresolution for quality (use4Kfor prints)
- Square format (
- Generate: Run the script with chosen parameters
- Present result: Show the saved image path
Extending the Database
To add a new city, edit scripts/generate_food_diorama.py and add an entry to CITY_DATABASE:
"城市名": {
"base": "基础食物",
"base_desc": "详细描述",
"history_text": "历史铭文",
"city_material": "城市材质",
"city_decoration": "装饰元素",
"q1": {"name": "早餐", "desc": "描述", "texture": "质感", "action": "动作"},
"q2": {"name": "硬菜", "desc": "描述", "texture": "质感", "action": "动作",
"costume": "服饰", "historical_figure": "历史人物"},
"q3": {"name": "街头", "desc": "描述", "texture": "质感", "action": "动作",
"historical_scene": "历史场景"},
"q4": {"name": "甜品", "desc": "描述", "texture": "质感", "action": "动作",
"cultural_symbol": "文化符号"}
}
Examples
Create a Xi'an diorama for Instagram
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 西安 --size 1024x1024 --resolution 2K --output xian-food-post.png
Generate Chongqing wallpaper
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 重庆 --size 1536x672 --resolution 4K --output chongqing-wallpaper.png
Quick test with Guangzhou
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py 广州 --resolution 1K
Best Practices
- Start with 2K: Balance between quality and generation time
- Use square for social: Most versatile format
- Landscape for prints: Better for wall art or desktop wallpapers
- Check city availability: Use
--list-citiesbefore committing to generation - Preview prompts: Use
--show-promptto verify content before generating
Troubleshooting
City not found:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/food-diorama-skill/scripts/generate_food_diorama.py --list-cities
nanobanana not found:
Ensure nanobanana skill is installed and GEMINI_API_KEY is configured in ~/.nanobanana.env
Generation failed:
- Check GEMINI_API_KEY is valid
- Try lower resolution (1K)
- Verify sufficient API quota
- Use faster model:
--model gemini-2.5-flash-image