feat(brand): V-viewfinder favicon set (replaces split-W on photo)
CI / test (push) Has been cancelled
Picked 3a from the favicons-and-logo-v2 iteration: a yellow V cut out of
navy with the harbor photo visible inside — "you are looking at a
photograph framed by the V". The brand's own glyph rather than initials.
What changed:
- favicon-16 / -32 / -64 / icon-192 / icon-512 / apple-touch-icon (180):
V at 86% of canvas, navy outside, full center-cropped harbor inside,
yellow stroke-outlined border proportional to size.
- icon-512-maskable: V at 65% of canvas (inside the Android safe zone),
navy in the outer 35% so circle/squircle launcher masks crop navy
pixels, not the V.
- favicon.svg: lightweight vector — yellow V outline on navy, no embedded
photo (kept under 300 bytes so it's fast even before the build cache).
- favicon.ico: multi-resolution 16/32/64 for legacy clients.
Root-level fallbacks (public/apple-touch-icon.png + -precomposed +
favicon.{svg,ico}) updated in lock-step so iOS's Add-to-Home-Screen
probes pick up the new icon without falling back to a cached old one.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@@ -1,12 +1,6 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
|
||||
<defs>
|
||||
<clipPath id="wv-left"><rect x="0" y="0" width="32" height="64"/></clipPath>
|
||||
<clipPath id="wv-right"><rect x="32" y="0" width="32" height="64"/></clipPath>
|
||||
</defs>
|
||||
<rect width="64" height="64" rx="12" fill="#1a3a5c"/>
|
||||
<g font-family="system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
||||
font-weight="900" font-size="56" text-anchor="middle">
|
||||
<text x="32" y="50" fill="#fafafa" clip-path="url(#wv-left)">W</text>
|
||||
<text x="32" y="50" fill="#f0d000" clip-path="url(#wv-right)">W</text>
|
||||
</g>
|
||||
<rect width="64" height="64" rx="10" fill="#0e2740"/>
|
||||
<path d="M 12 12 L 32 52 L 52 12"
|
||||
stroke="#f0d000" stroke-width="6"
|
||||
stroke-linejoin="round" stroke-linecap="round" fill="none"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 599 B After Width: | Height: | Size: 271 B |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 885 B After Width: | Height: | Size: 647 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 7.0 KiB After Width: | Height: | Size: 5.0 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 303 KiB After Width: | Height: | Size: 115 KiB |
|
Before Width: | Height: | Size: 234 KiB After Width: | Height: | Size: 190 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 30 KiB |
@@ -1,12 +1,6 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
|
||||
<defs>
|
||||
<clipPath id="wv-left"><rect x="0" y="0" width="32" height="64"/></clipPath>
|
||||
<clipPath id="wv-right"><rect x="32" y="0" width="32" height="64"/></clipPath>
|
||||
</defs>
|
||||
<rect width="64" height="64" rx="12" fill="#1a3a5c"/>
|
||||
<g font-family="system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
||||
font-weight="900" font-size="56" text-anchor="middle">
|
||||
<text x="32" y="50" fill="#fafafa" clip-path="url(#wv-left)">W</text>
|
||||
<text x="32" y="50" fill="#f0d000" clip-path="url(#wv-right)">W</text>
|
||||
</g>
|
||||
<rect width="64" height="64" rx="10" fill="#0e2740"/>
|
||||
<path d="M 12 12 L 32 52 L 52 12"
|
||||
stroke="#f0d000" stroke-width="6"
|
||||
stroke-linejoin="round" stroke-linecap="round" fill="none"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 599 B After Width: | Height: | Size: 271 B |
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 885 B After Width: | Height: | Size: 647 B |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 7.0 KiB After Width: | Height: | Size: 5.0 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 303 KiB After Width: | Height: | Size: 115 KiB |
|
Before Width: | Height: | Size: 234 KiB After Width: | Height: | Size: 190 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 2.4 KiB |
@@ -1,12 +1,6 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
|
||||
<defs>
|
||||
<clipPath id="wv-left"><rect x="0" y="0" width="32" height="64"/></clipPath>
|
||||
<clipPath id="wv-right"><rect x="32" y="0" width="32" height="64"/></clipPath>
|
||||
</defs>
|
||||
<rect width="64" height="64" rx="12" fill="#1a3a5c"/>
|
||||
<g font-family="system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif"
|
||||
font-weight="900" font-size="56" text-anchor="middle">
|
||||
<text x="32" y="50" fill="#fafafa" clip-path="url(#wv-left)">W</text>
|
||||
<text x="32" y="50" fill="#f0d000" clip-path="url(#wv-right)">W</text>
|
||||
</g>
|
||||
<rect width="64" height="64" rx="10" fill="#0e2740"/>
|
||||
<path d="M 12 12 L 32 52 L 52 12"
|
||||
stroke="#f0d000" stroke-width="6"
|
||||
stroke-linejoin="round" stroke-linecap="round" fill="none"/>
|
||||
</svg>
|
||||
|
||||
|
Before Width: | Height: | Size: 599 B After Width: | Height: | Size: 271 B |