Skip to content

Instantly share code, notes, and snippets.

@pleabargain
Created November 24, 2025 08:42
Show Gist options
  • Select an option

  • Save pleabargain/ac24a601d0e0db6866cc6c9f28dab0a0 to your computer and use it in GitHub Desktop.

Select an option

Save pleabargain/ac24a601d0e0db6866cc6c9f28dab0a0 to your computer and use it in GitHub Desktop.
gemini 3 genearated skull head svg
Display the source blob
Display the rendered blob
Raw
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 600 800" width="600" height="800" preserveAspectRatio="xMidYMid meet">
<defs>
<!-- Bone Gradient -->
<linearGradient id="boneGrad" x1="0%" y1="0%" x2="100%" y2="10%">
<stop offset="0%" stop-color="#e6e1d3"/>
<stop offset="50%" stop-color="#f2efe6"/>
<stop offset="100%" stop-color="#d1cbb8"/>
</linearGradient>
<!-- Bone Shadow Gradient -->
<linearGradient id="boneShadow" x1="30%" y1="0%" x2="80%" y2="100%">
<stop offset="0%" stop-color="#d1cbb8"/>
<stop offset="100%" stop-color="#9e9682"/>
</linearGradient>
<!-- Deep Shadow for Cavities -->
<radialGradient id="cavityGrad" cx="50%" cy="50%" r="50%">
<stop offset="70%" stop-color="#3a352a"/>
<stop offset="100%" stop-color="#1a1812"/>
</radialGradient>
<!-- Wig Gradient -->
<radialGradient id="wigGrad" cx="50%" cy="40%" r="60%">
<stop offset="0%" stop-color="#333333"/>
<stop offset="60%" stop-color="#1a1a1a"/>
<stop offset="100%" stop-color="#050505"/>
</radialGradient>
<!-- Lens Gradient -->
<linearGradient id="lensGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" stop-color="#66d9e8" stop-opacity="0.9"/>
<stop offset="50%" stop-color="#22b8cf" stop-opacity="0.85"/>
<stop offset="100%" stop-color="#104e66" stop-opacity="0.9"/>
</linearGradient>
<!-- Frame Gradient -->
<linearGradient id="frameGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" stop-color="#eadd99"/>
<stop offset="50%" stop-color="#d4c068"/>
<stop offset="100%" stop-color="#b09b45"/>
</linearGradient>
<!-- Wig Texture Filter -->
<filter id="fuzzy">
<feTurbulence type="fractalNoise" baseFrequency="0.8" numOctaves="3" result="noise"/>
<feDisplacementMap in="SourceGraphic" in2="noise" scale="3" />
</filter>
</defs>
<!-- Background -->
<rect width="100%" height="100%" fill="#dcdcdc"/>
<!-- Back of Wig (Behind Neck) -->
<path d="M180,450 Q150,550 200,600 L400,600 Q450,550 420,450 Z" fill="#1a1a1a"/>
<!-- Spine & Neck -->
<g transform="translate(0, 20)">
<!-- Vertebrae -->
<path d="M270,580 L330,580 L325,600 L275,600 Z" fill="url(#boneShadow)"/>
<path d="M265,605 L335,605 L330,625 L270,625 Z" fill="url(#boneGrad)"/>
<path d="M260,630 L340,630 L335,650 L265,650 Z" fill="url(#boneShadow)"/>
<path d="M255,655 L345,655 L340,675 L260,675 Z" fill="url(#boneGrad)"/>
</g>
<!-- Ribcage & Shoulders -->
<g transform="translate(0, 50)">
<!-- Clavicle Left -->
<path d="M260,660 C200,650 100,680 40,720 C30,730 40,750 60,740 C120,710 220,680 260,680 Z" fill="url(#boneGrad)" stroke="#9e9682" stroke-width="1"/>
<!-- Clavicle Right -->
<path d="M340,660 C400,650 500,680 560,720 C570,730 560,750 540,740 C480,710 380,680 340,680 Z" fill="url(#boneGrad)" stroke="#9e9682" stroke-width="1"/>
<!-- Sternum -->
<path d="M270,680 L330,680 L310,780 L290,780 Z" fill="url(#boneGrad)"/>
<!-- Ribs -->
<path d="M280,700 C200,700 150,750 120,800" fill="none" stroke="#e6e1d3" stroke-width="15" stroke-linecap="round"/>
<path d="M320,700 C400,700 450,750 480,800" fill="none" stroke="#e6e1d3" stroke-width="15" stroke-linecap="round"/>
<path d="M285,740 C220,740 180,780 160,820" fill="none" stroke="#d1cbb8" stroke-width="12" stroke-linecap="round"/>
<path d="M315,740 C380,740 420,780 440,820" fill="none" stroke="#d1cbb8" stroke-width="12" stroke-linecap="round"/>
</g>
<!-- Skull -->
<g>
<!-- Jaw (Mandible) -->
<path d="M220,450 C220,550 260,590 300,590 C340,590 380,550 380,450 L360,420 L300,420 L240,420 Z" fill="url(#boneGrad)"/>
<path d="M230,460 C230,530 260,570 300,570 C340,570 370,530 370,460" fill="none" stroke="#d1cbb8" stroke-width="2"/>
<!-- Cranium Base -->
<path d="M190,350 C190,250 230,180 300,180 C370,180 410,250 410,350 C410,420 390,480 350,500 C330,510 270,510 250,500 C210,480 190,420 190,350 Z" fill="url(#boneGrad)"/>
<!-- Cheekbones (Zygomatic) -->
<path d="M190,380 Q170,400 210,430 L240,440" fill="none" stroke="#d1cbb8" stroke-width="15" stroke-linecap="round"/>
<path d="M410,380 Q430,400 390,430 L360,440" fill="none" stroke="#d1cbb8" stroke-width="15" stroke-linecap="round"/>
<!-- Nasal Cavity -->
<path d="M285,390 Q300,380 315,390 L308,420 L300,425 L292,420 Z" fill="#222"/>
<!-- Teeth -->
<g fill="#fdfdf0" stroke="#cbbfa5" stroke-width="1">
<!-- Upper -->
<rect x="265" y="480" width="10" height="15" rx="2"/>
<rect x="276" y="482" width="11" height="14" rx="2"/>
<rect x="288" y="483" width="12" height="14" rx="2"/>
<rect x="301" y="483" width="12" height="14" rx="2"/>
<rect x="314" y="482" width="11" height="14" rx="2"/>
<rect x="326" y="480" width="10" height="15" rx="2"/>
<!-- Lower -->
<rect x="266" y="496" width="9" height="14" rx="2"/>
<rect x="276" y="497" width="11" height="13" rx="2"/>
<rect x="288" y="498" width="12" height="13" rx="2"/>
<rect x="301" y="498" width="12" height="13" rx="2"/>
<rect x="314" y="497" width="11" height="13" rx="2"/>
<rect x="326" y="496" width="9" height="14" rx="2"/>
</g>
<!-- Eye Sockets (Behind glasses) -->
<ellipse cx="250" cy="350" rx="35" ry="30" fill="#2a2a2a"/>
<ellipse cx="350" cy="350" rx="35" ry="30" fill="#2a2a2a"/>
</g>
<!-- Sunglasses -->
<g transform="rotate(-2, 300, 350)">
<!-- Left Lens (Viewer's Left) -->
<g>
<path d="M180,320 C180,280 220,270 250,270 C280,270 300,300 300,340 C300,380 270,410 230,410 C190,410 180,360 180,320 Z" fill="url(#lensGrad)" stroke="url(#frameGrad)" stroke-width="6"/>
<!-- Reflection -->
<path d="M195,320 Q210,300 240,310 Q220,350 195,320" fill="white" opacity="0.3"/>
<ellipse cx="210" cy="300" rx="10" ry="5" transform="rotate(-45, 210, 300)" fill="white" opacity="0.4"/>
</g>
<!-- Bridge -->
<path d="M298,320 Q310,310 322,320" fill="none" stroke="url(#frameGrad)" stroke-width="6"/>
<!-- Right Lens (Viewer's Right) -->
<g>
<path d="M320,320 C320,280 350,270 390,270 C420,270 440,300 440,340 C440,380 410,410 370,410 C330,410 320,360 320,320 Z" fill="url(#lensGrad)" stroke="url(#frameGrad)" stroke-width="6"/>
<!-- Reflection -->
<path d="M335,320 Q350,300 380,310 Q360,350 335,320" fill="white" opacity="0.3"/>
<ellipse cx="350" cy="300" rx="10" ry="5" transform="rotate(-45, 350, 300)" fill="white" opacity="0.4"/>
</g>
<!-- Temple Arms -->
<path d="M180,310 L160,300" stroke="url(#frameGrad)" stroke-width="4"/>
<path d="M440,310 L460,300" stroke="url(#frameGrad)" stroke-width="4"/>
</g>
<!-- Afro Wig (Main) -->
<!-- Using a complex path to simulate the bumpy silhouette -->
<path d="
M150,450
C100,440 50,400 50,300
C50,200 100,100 200,60
C250,40 350,40 400,60
C500,100 550,200 550,300
C550,400 500,440 450,450
C480,480 480,520 450,550
C420,580 380,550 380,520
L220,520
C220,550 180,580 150,550
C120,520 120,480 150,450
Z"
fill="url(#wigGrad)" filter="url(#fuzzy)"/>
<!-- Wig Texture Details (Small curls) -->
<g fill="none" stroke="#000" stroke-width="1" opacity="0.3">
<path d="M100,300 Q110,290 120,300 M130,250 Q140,240 150,250 M450,300 Q460,290 470,300 M300,100 Q310,90 320,100" />
<circle cx="200" cy="200" r="10" stroke-opacity="0.2"/>
<circle cx="400" cy="200" r="12" stroke-opacity="0.2"/>
<circle cx="300" cy="150" r="15" stroke-opacity="0.2"/>
<circle cx="150" cy="350" r="8" stroke-opacity="0.2"/>
<circle cx="450" cy="350" r="9" stroke-opacity="0.2"/>
</g>
<!-- Final Shadows/Overlays for depth -->
<path d="M250,500 Q300,510 350,500" fill="none" stroke="#d1cbb8" stroke-width="1" opacity="0.5"/>
</svg>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment