All checks were successful
Deploy / build-deploy (push) Successful in 5m32s
45 lines
2.6 KiB
XML
45 lines
2.6 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" role="img" aria-label="Catcrafts">
|
|
<!--
|
|
The ASCII cat, reified: ^ ^ caret eyes and the site's ">_" prompt as the
|
|
mouth — the cat speaks shell. The prompt sits left of centre on purpose;
|
|
prompts are left-aligned. Replaces the bare ">_" tile, which was honest
|
|
about the terminal but silent about the name.
|
|
|
|
Head geometry is the "flare" revision: the first cut had a flat crown
|
|
between wide ear tufts and a square jaw, which read horned-owl. Now the
|
|
ears stand tall over a domed skull, the cheeks taper to a rounded chin
|
|
(owl faces stay wide all the way down), and the whiskers spring OUTWARD
|
|
from the cheek line into the corners the taper frees up — outside the
|
|
face so they never crowd the prompt. Whiskers are drawn at 3.5 against
|
|
the face's 5 so they read as hair, not bone.
|
|
|
|
Drawn as paths, not <text>. A text favicon depends on a font being available
|
|
at 16px in whatever context the browser rasterises it — including contexts
|
|
with no font stack at all — and falls back to a blank tile when it is not.
|
|
Paths always render.
|
|
|
|
The same geometry is inlined in RenderNav (Catcrafts.Shared-Views.cppm)
|
|
with CSS-variable colours. Change the drawing there too or the header and
|
|
the tab icon drift apart.
|
|
-->
|
|
<rect width="64" height="64" rx="12" fill="#0b0d10"/>
|
|
<!-- head: tall ears, domed crown, cheeks tapering to a rounded chin -->
|
|
<path d="M9 26 L13 4 L23 15 Q32 11 41 15 L51 4 L55 26 L54 38 Q52 56 32 56 Q12 56 10 38 Z"
|
|
fill="none" stroke="#4cc2ff" stroke-width="5" stroke-linejoin="round"/>
|
|
<!-- whiskers: outside the silhouette, anchored to the cheek line -->
|
|
<path d="M10.5 40 L4.5 42 M11.5 46 L6 49 M53.5 40 L59.5 42 M52.5 46 L58 49"
|
|
fill="none" stroke="#4cc2ff" stroke-width="3.5" stroke-linecap="round"/>
|
|
<!-- eyes: the ^ ^ of a happy ASCII cat. Two units above the first cut so
|
|
the > keeps clear air after the prompt moved up away from the chin. -->
|
|
<path d="M17 32 L23 25 L29 32 M35 32 L41 25 L47 32"
|
|
fill="none" stroke="#4cc2ff" stroke-width="5"
|
|
stroke-linecap="round" stroke-linejoin="round"/>
|
|
<!-- mouth: the shell prompt. Two units higher than the first cut — the
|
|
tapered jaw curves inward through the y48-52 band the glyphs' stroke
|
|
edges used to occupy, and they visibly collided with the chin. -->
|
|
<path d="M23 38 L29 43 L23 48"
|
|
fill="none" stroke="#e6e8ec" stroke-width="5"
|
|
stroke-linecap="round" stroke-linejoin="round"/>
|
|
<path d="M34 48 L42 48"
|
|
fill="none" stroke="#e6e8ec" stroke-width="5" stroke-linecap="round"/>
|
|
</svg>
|