agent-joule/crates/zed/resources/app-icon.svg
David Charlot 24e857e945 Brand the app icon: Agent Joule energy bolt, replacing the default Zed icon
The macOS/Linux/Windows bundles baked in the upstream Zed app icon. Replace it
with the Agent Joule mark — an emerald energy bolt descending through the cascade
rails on a dark tile — so the brand travels with every app. Sources: app-icon.svg
is the vector master; app-icon.png (512) / [email protected] (1024) feed the macOS
.icns and the Linux icons; windows/app-icon.ico carries 16–256px for Windows.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-26 09:48:18 -04:00

55 lines
2.2 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" width="1024" height="1024" viewBox="0 0 1024 1024">
<defs>
<linearGradient id="tile" x1="0" y1="0" x2="0" y2="1">
<stop offset="0" stop-color="#10231b"/>
<stop offset="0.55" stop-color="#0a160f"/>
<stop offset="1" stop-color="#05100a"/>
</linearGradient>
<radialGradient id="glow" cx="0.5" cy="0.46" r="0.55">
<stop offset="0" stop-color="#10b981" stop-opacity="0.55"/>
<stop offset="0.55" stop-color="#10b981" stop-opacity="0.12"/>
<stop offset="1" stop-color="#10b981" stop-opacity="0"/>
</radialGradient>
<linearGradient id="bolt" x1="0" y1="0" x2="0.35" y2="1">
<stop offset="0" stop-color="#6ee7b7"/>
<stop offset="0.5" stop-color="#10b981"/>
<stop offset="1" stop-color="#059669"/>
</linearGradient>
<filter id="boltglow" x="-40%" y="-40%" width="180%" height="180%">
<feGaussianBlur stdDeviation="14" result="b"/>
<feMerge><feMergeNode in="b"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
</defs>
<!-- tile -->
<rect x="0" y="0" width="1024" height="1024" rx="232" fill="url(#tile)"/>
<!-- subtle grid in the tile -->
<g stroke="#10b981" stroke-width="1.5" opacity="0.05">
<path d="M0 256 H1024 M0 512 H1024 M0 768 H1024 M256 0 V1024 M512 0 V1024 M768 0 V1024"/>
</g>
<!-- emerald aura -->
<rect x="0" y="0" width="1024" height="1024" rx="232" fill="url(#glow)"/>
<!-- cascade rails: three narrowing arcs the bolt descends through -->
<g fill="none" stroke="#10b981" stroke-linecap="round">
<path d="M300 372 H724" stroke-width="20" opacity="0.30"/>
<path d="M348 516 H676" stroke-width="20" opacity="0.22"/>
<path d="M396 660 H628" stroke-width="20" opacity="0.15"/>
</g>
<!-- energy bolt -->
<g filter="url(#boltglow)">
<path fill="url(#bolt)" d="M598 196
L372 548
L500 548
L444 828
L676 470
L548 470
L612 196 Z"/>
</g>
<!-- hot core -->
<path fill="#ecfdf5" opacity="0.85" d="M576 250 L432 524 L520 524 L500 690 Z"/>
<!-- inner hairline for crisp edge -->
<rect x="6" y="6" width="1012" height="1012" rx="226" fill="none" stroke="#34d399" stroke-width="3" opacity="0.18"/>
</svg>