Skip to content

Instantly share code, notes, and snippets.

@simonw

simonw/sonnet.md Secret

Created November 18, 2025 18:50
Show Gist options
  • Select an option

  • Save simonw/3296af92e4328dd4740385e6a4a2ac35 to your computer and use it in GitHub Desktop.

Select an option

Save simonw/3296af92e4328dd4740385e6a4a2ac35 to your computer and use it in GitHub Desktop.

2025-11-18T16:19:19 conversation: 01kabw89tatggavzvpkptqzxdw id: 01kabw6waev6yqwv3tmv54pbyc

Model: anthropic/claude-sonnet-4-5

Prompt

Generate an SVG of a California brown pelican riding a bicycle. The bicycle must have spokes and a correctly shaped bicycle frame. The pelican must have its characteristic large pouch, and there should be a clear indication of feathers. The pelican must be clearly pedaling the bicycle. The image should show the full breeding plumage of the California brown pelican.

Response

<!-- Front Wheel -->
<g id="frontWheel">
  <circle cx="80" cy="0" r="50" fill="none" stroke="#333" stroke-width="3"/>
  <!-- Spokes -->
  <line x1="80" y1="-50" x2="80" y2="50" stroke="#666" stroke-width="1"/>
  <line x1="30" y1="0" x2="130" y2="0" stroke="#666" stroke-width="1"/>
  <line x1="45" y1="-35" x2="115" y2="35" stroke="#666" stroke-width="1"/>
  <line x1="45" y1="35" x2="115" y2="-35" stroke="#666" stroke-width="1"/>
  <line x1="57" y1="-43" x2="103" y2="43" stroke="#666" stroke-width="1"/>
  <line x1="57" y1="43" x2="103" y2="-43" stroke="#666" stroke-width="1"/>
  <line x1="69" y1="-48" x2="91" y2="48" stroke="#666" stroke-width="1"/>
  <line x1="69" y1="48" x2="91" y2="-48" stroke="#666" stroke-width="1"/>
  <circle cx="80" cy="0" r="5" fill="#333"/>
</g>

<!-- Frame - proper bicycle geometry -->
<!-- Down tube -->
<line x1="-80" y1="0" x2="0" y2="-60" stroke="#C00" stroke-width="5"/>
<!-- Seat tube -->
<line x1="-80" y1="0" x2="-80" y2="-80" stroke="#C00" stroke-width="5"/>
<!-- Top tube -->
<line x1="-80" y1="-80" x2="0" y2="-60" stroke="#C00" stroke-width="5"/>
<!-- Head tube and fork -->
<line x1="0" y1="-60" x2="80" y2="0" stroke="#C00" stroke-width="5"/>
<!-- Seat stay -->
<line x1="-80" y1="-80" x2="-80" y2="0" stroke="#C00" stroke-width="4"/>
<!-- Chain stay -->
<line x1="-80" y1="0" x2="-30" y2="0" stroke="#C00" stroke-width="4"/>

<!-- Pedals and cranks -->
<g id="pedals">
  <!-- Crank arm 1 (forward, pelican foot on it) -->
  <line x1="-80" y1="0" x2="-60" y2="25" stroke="#333" stroke-width="4"/>
  <!-- Pedal 1 -->
  <rect x="-65" y="23" width="15" height="8" fill="#444" rx="2"/>
  
  <!-- Crank arm 2 (backward) -->
  <line x1="-80" y1="0" x2="-100" y2="-25" stroke="#333" stroke-width="4"/>
  <!-- Pedal 2 -->
  <rect x="-108" y="-27" width="15" height="8" fill="#444" rx="2"/>
  
  <!-- Crank center -->
  <circle cx="-80" cy="0" r="8" fill="#333"/>
</g>

<!-- Seat -->
<ellipse cx="-80" cy="-85" rx="15" ry="6" fill="#222"/>
<line x1="-80" y1="-80" x2="-80" y2="-85" stroke="#333" stroke-width="3"/>

<!-- Handlebars -->
<line x1="0" y1="-60" x2="10" y2="-75" stroke="#333" stroke-width="4"/>
<line x1="10" y1="-75" x2="-5" y2="-75" stroke="#333" stroke-width="4"/>
<line x1="10" y1="-75" x2="25" y2="-75" stroke="#333" stroke-width="4"/>
<!-- Feather details on body -->
<path d="M -40 -20 Q -35 -15 -40 -10" fill="none" stroke="#7a5c3e" stroke-width="1.5"/>
<path d="M -35 -25 Q -30 -20 -35 -15" fill="none" stroke="#7a5c3e" stroke-width="1.5"/>
<path d="M -30 -30 Q -25 -25 -30 -20" fill="none" stroke="#7a5c3e" stroke-width="1.5"/>
<path d="M -45 0 Q -40 5 -45 10" fill="none" stroke="#7a5c3e" stroke-width="1.5"/>
<path d="M -40 5 Q -35 10 -40 15" fill="none" stroke="#7a5c3e" stroke-width="1.5"/>
<path d="M -35 10 Q -30 15 -35 20" fill="none" stroke="#7a5c3e" stroke-width="1.5"/>

<!-- Wing (showing some extended feathers) -->
<g id="wing">
  <ellipse cx="-20" cy="-5" rx="45" ry="30" fill="#6b4d35" stroke="#3d2b22" stroke-width="2"/>
  <!-- Individual flight feathers -->
  <path d="M -50 -10 Q -60 -15 -65 -8" fill="#5C4033" stroke="#3d2b22" stroke-width="1.5"/>
  <path d="M -48 -5 Q -58 -10 -63 -3" fill="#5C4033" stroke="#3d2b22" stroke-width="1.5"/>
  <path d="M -46 0 Q -56 -5 -61 2" fill="#5C4033" stroke="#3d2b22" stroke-width="1.5"/>
  <path d="M -44 5 Q -54 0 -59 7" fill="#5C4033" stroke="#3d2b22" stroke-width="1.5"/>
  <path d="M -42 10 Q -52 5 -57 12" fill="#5C4033" stroke="#3d2b22" stroke-width="1.5"/>
  <!-- Feather texture lines -->
  <path d="M -30 -20 L -35 -10" stroke="#4a3526" stroke-width="1" opacity="0.6"/>
  <path d="M -25 -18 L -30 -8" stroke="#4a3526" stroke-width="1" opacity="0.6"/>
  <path d="M -20 -15 L -25 -5" stroke="#4a3526" stroke-width="1" opacity="0.6"/>
</g>

<!-- Breeding plumage - chestnut brown neck patch -->
<ellipse cx="15" cy="15" rx="25" ry="20" fill="#8B4513" stroke="#654321" stroke-width="1.5"/>

<!-- Neck with white breeding plumage -->
<path d="M 20 20 Q 35 30 40 50" fill="#F5E6D3" stroke="#d4c5b3" stroke-width="2"/>
<ellipse cx="28" cy="35" rx="12" ry="18" fill="#F5E6D3" stroke="#d4c5b3" stroke-width="1.5"/>

<!-- Head with breeding colors -->
<ellipse cx="45" cy="55" rx="20" ry="18" fill="#FFFACD" stroke="#e6d9a8" stroke-width="2"/>

<!-- Eye -->
<circle cx="50" cy="52" r="4" fill="#FFF"/>
<circle cx="51" cy="52" r="2.5" fill="#000"/>

<!-- Breeding plumage - yellow crown -->
<ellipse cx="42" cy="45" rx="15" ry="10" fill="#FFD700" stroke="#e6c200" stroke-width="1.5"/>

<!-- Bill (upper mandible) -->
<path d="M 60 58 L 110 62 L 108 58 L 60 55 Z" fill="#8B7355" stroke="#6b5a45" stroke-width="1.5"/>

<!-- Bill (lower mandible) -->
<path d="M 60 58 L 110 62 L 108 65 L 60 62 Z" fill="#9d8465" stroke="#6b5a45" stroke-width="1.5"/>

<!-- Characteristic large pouch -->
<path d="M 60 62 Q 85 85 108 65 L 110 62 Q 85 80 60 58 Z" fill="#DC143C" stroke="#a01028" stroke-width="2"/>
<!-- Pouch texture lines -->
<path d="M 70 67 Q 85 78 100 66" fill="none" stroke="#a01028" stroke-width="1" opacity="0.5"/>
<path d="M 68 64 Q 85 75 102 64" fill="none" stroke="#a01028" stroke-width="1" opacity="0.5"/>

<!-- Legs reaching to pedals -->
<!-- Left leg (forward, on pedal) -->
<g id="leftLeg">
  <line x1="5" y1="35" x2="15" y2="70" stroke="#5d5d5d" stroke-width="4"/>
  <line x1="15" y1="70" x2="25" y2="95" stroke="#5d5d5d" stroke-width="4"/>
  <!-- Foot on pedal -->
  <path d="M 25 95 L 32 96 M 25 95 L 30 100 M 25 95 L 28 102" stroke="#4a4a4a" stroke-width="2.5" stroke-linecap="round"/>
</g>

<!-- Right leg (back, showing pedaling motion) -->
<g id="rightLeg">
  <line x1="-5" y1="35" x2="-5" y2="65" stroke="#5d5d5d" stroke-width="4"/>
  <line x1="-5" y1="65" x2="-10" y2="85" stroke="#5d5d5d" stroke-width="4"/>
  <!-- Foot -->
  <path d="M -10 85 L -5 88 M -10 85 L -8 91 M -10 85 L -12 90" stroke="#4a4a4a" stroke-width="2.5" stroke-linecap="round"/>
</g>

<!-- Tail feathers with breeding plumage -->
<g id="tail" transform="translate(-55, 5)">
  <path d="M 0 0 L -15 -8 L -12 0 L -15 8 Z" fill="#5C4033" stroke="#3d2b22" stroke-width="1.5"/>
  <path d="M -5 0 L -20 -5 L -17 0 L -20 5 Z" fill="#6b4d35" stroke="#3d2b22" stroke-width="1.5"/>
</g>

Token usage

84 input, 3,677 output

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