analytics-metrics
Build data visualization and analytics dashboards. Use when creating charts, KPI displays, metrics dashboards, or data visualization components. Triggers on…
Generate images with Google's Nano Banana Pro (Gemini 3 Pro Image). Use when generating AI images via Gemini API, creating professional visuals, or building image generation features. Triggers on Nano Banana Pro, Gemini 3 Pro Image, gemini-3-pro-image-preview, Google image
$ npx -y skills add hoodini/ai-agents-skills --skill nano-banana-pro --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/nano-banana-proContext preview
The summary Claude sees to decide when to auto-load this skill.
Generate images with Google's Nano Banana Pro (Gemini 3 Pro Image). Use when generating AI images via Gemini API, creating professional visuals, or building image generation features. Triggers on Nano Banana Pro, Gemini 3 Pro Image, gemini-3-pro-image-preview, Google image
name: nano-banana-pro description: Generate images with Google's Nano Banana Pro (Gemini 3 Pro Image). Use when generating AI images via Gemini API, creating professional visuals, or building image generation features. Triggers on Nano Banana Pro, Gemini 3 Pro Image, gemini-3-pro-image-preview, Google image generation.
Generate high-quality images with Google's Gemini 3 Pro Image API.
**Nano Banana Pro** is the marketing name for **Gemini 3 Pro Image** (`gemini-3-pro-image-preview`), Google's state-of-the-art image generation and editing model built on Gemini 3 Pro.
1. Go to [Google AI Studio](https://aistudio.google.com) 2. Click "Get API Key" 3. Store securely as environment variable
from google import genai
from google.genai import types
client = genai.Client(api_key="YOUR_GEMINI_API_KEY")
response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="A serene Japanese garden with cherry blossoms and a koi pond",
config=types.GenerateContentConfig(
response_modalities=['TEXT', 'IMAGE']
)
)
# Process response
for part in response.candidates[0].content.parts:
if hasattr(part, 'text'):
print(f"Description: {part.text}")
elif hasattr(part, 'inline_data'):
# Save image
image_data = part.inline_data.data # Base64 encoded
mime_type = part.inline_data.mime_type # image/png
import base64
with open("output.png", "wb") as f:
f.write(base64.b64decode(image_data))curl -s -X POST \
"https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [{
"role": "user",
"parts": [{"text": "Create a vibrant infographic about photosynthesis"}]
}],
"generationConfig": {
"responseModalities": ["TEXT", "IMAGE"]
}
}'const GEMINI_API_KEY = process.env.GEMINI_API_KEY;
async function generateImage(prompt: string) {
const response = await fetch(
'https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent',
{
method: 'POST',
headers: {
'x-goog-api-key': GEMINI_API_KEY!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
contents: [{
role: 'user',
parts: [{ text: prompt }]
}],
generationConfig: {
responseModalities: ['TEXT', 'IMAGE'],
},
}),
}
);
const data = await response.json();
return data;
}response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="Professional product photo of a coffee mug",
config=types.GenerateContentConfig(
response_modalities=['TEXT', 'IMAGE'],
image_config=types.ImageConfig(
aspect_ratio="16:9", # Options: 1:1, 3:2, 16:9, 9:16, 21:9
image_size="2K" # Options: 1K, 2K, 4K
)
)
)response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="Create an infographic showing today's stock market trends",
config=types.GenerateContentConfig(
response_modalities=['TEXT', 'IMAGE'],
tools=[{"google_search": {}}] # Enable search grounding
)
)# Create a chat session
chat = client.chats.create(
model="gemini-3-pro-image-preview",
config=types.GenerateContentConfig(
response_modalities=['TEXT', 'IMAGE'],
tools=[{"google_search": {}}]
)
)
# Initial generation
response1 = chat.send_message(
"Create a vibrant infographic explaining photosynthesis"
)
# Edit the image
response2 = chat.send_message(
"Update this infographic to be in Spanish. Keep all other elements the same."
)response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="""Create a professional poster with:
- Title: "Annual Tech Summit 2025"
- Date: March 15-17, 2025
- Location: San Francisco Convention Center
""",
config=types.GenerateContentConfig(
response_modalities=['TEXT', 'IMAGE']
)
)import base64
def load_image(path: str) -> str:
with open(path, "rb") as f:
return base64.b64encode(f.read()).decode()
character_ref = load_image("character.png")
response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents=[
{"text": "Generate an image of this person at a tech conference"},
{"inline_data": {"mime_type": "image/png", "data": character_ref}}
],
config=types.GenerateContentConfig(
response_modalities=['TEXT', 'IMAGE']
)
)// app/api/generate-image/route.ts
import { NextRequest, NextResponse } from 'next/server';
export async function POST(request: NextRequest) {
const { prompt, aspectRatio = '1:1', imageSize = '2K' } = await request.json();
try {
const response = await fetch(
'https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-image-preview:generateContent',
{
method: 'POST',
headers: {
'x-goog-api-key': process.env.GEMINI_API_KEY!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
contents: [{ role: 'user', parts: [{ text: prompt }] }],
generationConfig: {
responseModalities: ['TEXT', 'IMAGE'],
imageConfig🧠 AI Agent Skills Repository - A curated collection of specialized skills for AI coding agents (Claude Code, GitHub Copilot, Cursor, Windsurf). Created by Yuval Avidani using GitHub Copilot via VS Code Insiders.
Repo: hoodini/ai-agents-skills
Build data visualization and analytics dashboards. Use when creating charts, KPI displays, metrics dashboards, or data visualization components. Triggers on…
Manage AWS accounts, organizations, IAM, and billing. Use when setting up AWS Organizations, managing IAM policies, controlling costs, or implementing…
Build a new AI agent on AWS and deploy it easily, OR wrap and deploy an agent you already have, using the Amazon Bedrock AgentCore harness. Explains what an…
Build AI agents with the Strands Agents SDK - the open-source framework (the agent "brain") for writing agent logic, tools, and multi-agent systems in Python.…
Build fast applications with Bun JavaScript runtime. Use when creating Bun projects, using Bun APIs, bundling, testing, or optimizing Node.js alternatives.…
Build a premium cinematic landing page with mouse-scrub video hero and brand-driven narrative-arc sections. Use whenever the user provides a hero video plus a…