Skip to content

Instantly share code, notes, and snippets.

@simonw
Created April 24, 2026 04:21
Show Gist options
  • Select an option

  • Save simonw/9e8dfed68933ab752c9cf27a03250a7c to your computer and use it in GitHub Desktop.

Select an option

Save simonw/9e8dfed68933ab752c9cf27a03250a7c to your computer and use it in GitHub Desktop.

2026-04-24T04:12:23 conversation: 01kpyvb20yv3f1vv1jyap34b09 id: 01kpyv0nmys2n5t1e5e46hcw0s

Model: openrouter/deepseek/deepseek-v4-pro

Prompt

Generate an SVG of a pelican riding a bicycle

Response

Okay — I’ll generate a playful SVG illustration of a pelican riding a bicycle.

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 800" width="100%" height="100%">
  <defs>
    <!-- Background Gradient -->
    <radialGradient id="bgGrad" cx="50%" cy="50%" r="50%" fx="50%" fy="50%">
      <stop offset="0%" stop-color="#E0F7FA" />
      <stop offset="100%" stop-color="#B2EBF2" />
    </radialGradient>
    
    <!-- Beak Gradient -->
    <linearGradient id="beakGrad" x1="0%" y1="0%" x2="100%" y2="100%">
      <stop offset="0%" stop-color="#FFB74D" />
      <stop offset="100%" stop-color="#FF9800" />
    </linearGradient>
    
    <!-- Pouch Gradient -->
    <linearGradient id="pouchGrad" x1="0%" y1="0%" x2="0%" y2="100%">
      <stop offset="0%" stop-color="#FFE082" />
      <stop offset="100%" stop-color="#FFCA28" />
    </linearGradient>
    
    <!-- Shadow Filter -->
    <filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
      <feDropShadow dx="0" dy="15" stdDeviation="15" flood-color="#000" flood-opacity="0.1" />
    </filter>
  </defs>

  <!-- BACKGROUND -->
  <rect width="800" height="800" fill="url(#bgGrad)" />
  
  <!-- SUN & ENVIRONMENT -->
  <g stroke-linecap="round">
    <circle cx="150" cy="150" r="60" fill="#FFD700" filter="url(#shadow)" />
    <g stroke="#FFD700" stroke-width="8">
      <line x1="150" y1="70" x2="150" y2="40" />
      <line x1="150" y1="230" x2="150" y2="260" />
      <line x1="70" y1="150" x2="40" y2="150" />
      <line x1="230" y1="150" x2="260" y2="150" />
      <line x1="93" y1="93" x2="72" y2="72" />
      <line x1="207" y1="207" x2="228" y2="228" />
      <line x1="93" y1="207" x2="72" y2="228" />
      <line x1="207" y1="93" x2="228" y2="72" />
    </g>
    
    <!-- Wind Lines -->
    <g stroke="#FFFFFF" stroke-width="5" fill="none" opacity="0.6">
      <path d="M 600 200 Q 650 210 700 200" />
      <path d="M 620 240 Q 660 250 690 230" />
      <path d="M 610 160 Q 640 170 670 160" stroke-width="3" />
    </g>
  </g>

  <!-- GROUND SHADOW -->
  <ellipse cx="450" cy="690" rx="300" ry="25" fill="#000000" opacity="0.1" />

  <!-- ================= BICYCLE ================= -->
  <g id="bicycle">
    <!-- Wheels Tires & Rims -->
    <g id="rear-wheel">
      <!-- Tire -->
      <circle cx="300" cy="550" r="120" fill="none" stroke="#333" stroke-width="18" />
      <!-- Rim -->
      <circle cx="300" cy="550" r="110" fill="none" stroke="#DDD" stroke-width="4" />
      <!-- Spokes -->
      <g stroke="#999" stroke-width="2">
        <line x1="300" y1="430" x2="300" y2="670" />
        <line x1="180" y1="550" x2="420" y2="550" />
        <line x1="215" y1="465" x2="385" y2="635" />
        <line x1="385" y1="465" x2="215" y2="635" />
        <line x1="188" y1="510" x2="412" y2="590" />
        <line x1="188" y1="590" x2="412" y2="510" />
        <line x1="213" y1="442" x2="387" y2="658" />
        <line x1="387" y1="442" x2="213" y2="658" />
      </g>
      <!-- Hub -->
      <circle cx="300" cy="550" r="15" fill="#555" />
    </g>

    <g id="front-wheel">
      <!-- Tire -->
      <circle cx="600" cy="550" r="120" fill="none" stroke="#333" stroke-width="18" />
      <!-- Rim -->
      <circle cx="600" cy="550" r="110" fill="none" stroke="#DDD" stroke-width="4" />
      <!-- Spokes -->
      <g stroke="#999" stroke-width="2">
        <line x1="600" y1="430" x2="600" y2="670" />
        <line x1="480" y1="550" x2="720" y2="550" />
        <line x1="515" y1="465" x2="685" y2="635" />
        <line x1="685" y1="465" x2="515" y2="635" />
        <line x1="488" y1="510" x2="712" y2="590" />
        <line x1="488" y1="590" x2="712" y2="510" />
        <line x1="513" y1="442" x2="687" y2="658" />
        <line x1="687" y1="442" x2="513" y2="658" />
      </g>
      <!-- Hub -->
      <circle cx="600" cy="550" r="15" fill="#555" />
    </g>

    <!-- Chain & Drivetrain -->
    <g id="drivetrain">
      <!-- Chain top run -->
      <line x1="300" y1="545" x2="400" y2="545" stroke="#666" stroke-width="8" stroke-dasharray="6 3" />
      <!-- Chain bottom run -->
      <line x1="300" y1="555" x2="400" y2="555" stroke="#666" stroke-width="8" stroke-dasharray="6 3" />
      <!-- Sprocket -->
      <circle cx="300" cy="550" r="18" fill="none" stroke="#555" stroke-width="8" />
      <!-- Chainring -->
      <circle cx="400" cy="550" r="32" fill="none" stroke="#555" stroke-width="10" />
      <circle cx="400" cy="550" r="22" fill="none" stroke="#666" stroke-width="4" stroke-dasharray="4 2" />
    </g>

    <!-- Frame -->
    <g id="frame" stroke-linecap="round" stroke-linejoin="round">
      <!-- Chainstay -->
      <line x1="300" y1="550" x2="400" y2="550" stroke="#E53935" stroke-width="16" />
      <!-- Seat tube -->
      <line x1="400" y1="550" x2="350" y2="380" stroke="#E53935" stroke-width="16" />
      <!-- Seat stay -->
      <line x1="350" y1="380" x2="300" y2="550" stroke="#E53935" stroke-width="12" />
      <!-- Down tube -->
      <line x1="400" y1="550" x2="530" y2="320" stroke="#E53935" stroke-width="16" />
      <!-- Top tube -->
      <line x1="350" y1="380" x2="530" y2="320" stroke="#E53935" stroke-width="12" />
      <!-- Fork -->
      <line x1="530" y1="320" x2="600" y2="550" stroke="#FFD700" stroke-width="14" />
    </g>

    <!-- Pedals (Left / Background) -->
    <g id="left-pedal">
      <line x1="400" y1="550" x2="360" y2="500" stroke="#777" stroke-width="10" stroke-linecap="round" />
      <rect x="335" y="490" width="45" height="18" rx="4" fill="#333" />
    </g>

    <!-- Seat & Handlebars -->
    <g id="seat-handlebars">
      <!-- Seat post -->
      <line x1="350" y1="380" x2="350" y2="340" stroke="#555" stroke-width="12" stroke-linecap="round" />
      <!-- Saddle -->
      <ellipse cx="350" cy="340" rx="45" ry="18" fill="#222" />
      <path d="M 305 340 C 305 350, 395 350, 395 340 Z" fill="#222" />
      
      <!-- Handlebar stem -->
      <line x1="530" y1="320" x2="530" y2="280" stroke="#555" stroke-width="14" stroke-linecap="round" />
      <!-- Handlebar curve -->
      <path d="M 530 280 C 560 280, 510 320, 480 320 C 460 320, 470 300, 480 290" fill="none" stroke="#444" stroke-width="14" stroke-linecap="round" />
      <path d="M 480 320 L 460 330" fill="none" stroke="#444" stroke-width="14" stroke-linecap="round" />
    </g>
  </g>

  <!-- ================= PELICAN ================= -->
  <g id="pelican" filter="url(#shadow)">
    <!-- Left Leg (Background) -->
    <g id="left-leg">
      <path d="M 270 420 L 320 460 L 360 500" fill="none" stroke="#E65100" stroke-width="14" stroke-linecap="round" stroke-linejoin="round" />
      <g transform="translate(360, 500) rotate(30)">
        <!-- Webbed Foot -->
        <path d="M 0 0 L 35 0 L 45 -12 M 35 0 L 45 12" fill="none" stroke="#E65100" stroke-width="10" stroke-linecap="round" stroke-linejoin="round" />
        <path d="M 30 -6 L 45 -18 L 55 -18" fill="none" stroke="#E65100" stroke-width="5" stroke-linecap="round" />
        <path d="M 30 6 L 45 18 L 55 18" fill="none" stroke="#E65100" stroke-width="5" stroke-linecap="round" />
      </g>
    </g>

    <!-- Wing (Background side) -->
    <g id="wing">
      <path d="M 320 280 C 400 250, 480 300, 480 350 C 480 380, 420 380, 360 350 C 330 330, 310 300, 320 280 Z" fill="#F5F5F5" stroke="#222" stroke-width="6" stroke-linejoin="round" />
      <!-- Wing feather details -->
      <path d="M 330 320 Q 400 350 470 350" fill="none" stroke="#CCC" stroke-width="5" stroke-linecap="round" />
      <path d="M 340 340 Q 400 370 460 370" fill="none" stroke="#CCC" stroke-width="5" stroke-linecap="round" />
      <path d="M 340 365 Q 380 390 430 385" fill="none" stroke="#CCC" stroke-width="4" stroke-linecap="round" />
    </g>

    <!-- Body -->
    <g id="body">
      <path d="M 220 180 C 300 160, 380 250, 380 350 C 380 400, 320 420, 250 430 C 180 440, 120 400, 120 340 C 120 280, 140 220, 220 180 Z" fill="#FFFFFF" stroke="#222" stroke-width="6" stroke-linejoin="round" />
      
      <!-- Tail Feathers -->
      <g stroke="#333" stroke-width="8" stroke-linecap="round" fill="none">
        <path d="M 130 320 L 90 300" />
        <path d="M 125 340 L 85 330" />
        <path d="M 125 360 L 90 360" />
        <path d="M 130 380 L 100 390" />
      </g>
    </g>

    <!-- Right Leg (Foreground) -->
    <g id="right-leg">
      <path d="M 290 420 L 380 520 L 440 600" fill="none" stroke="#FF9800" stroke-width="14" stroke-linecap="round" stroke-linejoin="round" />
      <g transform="translate(440, 600) rotate(-30)">
        <!-- Webbed Foot -->
        <path d="M 0 0 L 35 0 L 45 -12 M 35 0 L 45 12" fill="none" stroke="#FF9800" stroke-width="10" stroke-linecap="round" stroke-linejoin="round" />
        <path d="M 30 -6 L 45 -18 L 55 -18" fill="none" stroke="#FF9800" stroke-width="5" stroke-linecap="round" />
        <path d="M 30 6 L 45 18 L 55 18" fill="none" stroke="#FF9800" stroke-width="5" stroke-linecap="round" />
      </g>
    </g>

    <!-- Right Pedal (Foreground) -->
    <g id="right-pedal">
      <line x1="400" y1="550" x2="440" y2="600" stroke="#777" stroke-width="10" stroke-linecap="round" />
      <rect x="420" y="595" width="45" height="18" rx="4" fill="#333" />
    </g>

    <!-- Neck & Head -->
    <g id="neck-head">
      <!-- Neck -->
      <path d="M 310 280 C 330 230, 350 180, 380 170 L 390 190 C 360 220, 340 270, 320 330 Z" fill="#FFFFFF" stroke="#222" stroke-width="6" stroke-linejoin="round" />
      
      <!-- Head -->
      <circle cx="380" cy="145" r="40" fill="#FFFFFF" stroke="#222" stroke-width="6" />
      
      <!-- Crest -->
      <g stroke="#222" stroke-width="6" stroke-linecap="round" fill="none">
        <path d="M 370 115 L 365 90" />
        <path d="M 382 110 L 380 85" />
        <path d="M 395 115 L 398 90" />
      </g>
      
      <!-- Eye -->
      <circle cx="390" cy="140" r="7" fill="#222" />
      <circle cx="392" cy="138" r="2.5" fill="#FFF" /> <!-- Catchlight -->
      <path d="M 378 130 Q 388 125 398 135" fill="none" stroke="#222" stroke-width="4" stroke-linecap="round" /> <!-- Eyebrow -->

      <!-- Beak -->
      <g id="beak">
        <!-- Upper Beak -->
        <path d="M 410 135 C 460 120, 510 140, 540 160 L 420 165 Z" fill="url(#beakGrad)" stroke="#222" stroke-width="6" stroke-linejoin="round" />
        <!-- Nostril -->
        <ellipse cx="450" cy="150" rx="5" ry="3" fill="#444" transform="rotate(-10 450 150)" />
        <!-- Mouth Line -->
        <path d="M 415 160 L 520 165" fill="none" stroke="#222" stroke-width="4" stroke-linecap="round" />
        
        <!-- Lower Beak (Pouch) -->
        <path d="M 420 165 C 500 185, 540 230, 500 250 C 480 260, 440 220, 410 180 Z" fill="url(#pouchGrad)" stroke="#222" stroke-width="6" stroke-linejoin="round" />
        
        <!-- Pouch Detail / Line -->
        <path d="M 500 250 C 470 270, 430 230, 410 180" fill="none" stroke="#F57F17" stroke-width="4" stroke-linecap="round" opacity="0.6" />
        
        <!-- Inside Beak / Tongue (hidden mostly by pouch) -->
        <path d="M 430 160 L 490 165 L 430 175 Z" fill="#FF5252" />
      </g>
    </g>
  </g>
</svg>

The scene shows a white pelican balanced on the bicycle seat, with one wing stretched toward the handlebars and both webbed feet reaching the pedals. Bright blue sky tones, a sunny backdrop, and light wind lines give the image a light, energetic feel.

Token usage

14 input, 12,855 output, {"completion_tokens_details": {"reasoning_tokens": 8800}, "cost": 0.04475976, "cost_details": {"upstream_inference_cost": 0.04475976, "upstream_inference_prompt_cost": 2.436e-05, "upstream_inference_completions_cost": 0.0447354}}

@simonw
Copy link
Copy Markdown
Author

simonw commented Apr 24, 2026

image

@simonw
Copy link
Copy Markdown
Author

simonw commented Apr 24, 2026

Took 340352ms aka 5 minutes, 40 seconds.

@acolaprete
Copy link
Copy Markdown

Impressive, very nice...Let's see Mythos' Pelican.

@ahiyantra
Copy link
Copy Markdown

ahiyantra commented Apr 25, 2026

The pelican from mythos is classified information. ( /s? )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment