feat(landing): add favicon set — SVG primary + PNG/ICO fallback

Brand pulse-dot translated to favicon: dark rounded square (#0d1b12) +
inner green dot (#6ab98a) + faint outer ring (#2d7a4f @60%). Identical
visual language to .brand::before in the nav.

Assets:
- favicon.svg          — vector primary (modern browsers, scales)
- favicon-32.png       — PNG hint
- favicon.ico          — legacy multi-size (16/24/32/48)
- apple-touch-icon.png — iOS home-screen 180x180

PIL-generated PNG/ICO at 8x supersample + Lanczos downscale for clean
antialiasing. No external dependency added (PIL already on system).

index.html: 4 <link> tags wired in <head> (SVG, PNG 32, ICO alternate,
apple-touch). CV HTML left untouched; browser auto-fetches /favicon.ico
from root as fallback — TODO logged to mirror the link block when the
user finalizes CV edits.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Bastien Chanot
2026-05-17 03:51:14 +02:00
co-authored by Claude Opus 4.7
parent 1369d27b5b
commit ef31fb3059
6 changed files with 11 additions and 1 deletions
+4
View File
@@ -7,6 +7,10 @@
<meta name="author" content="Bastien Chanot">
<meta name="theme-color" content="#0d1b12">
<title>Bastien Chanot — Développeur Systèmes · Embarqué · Backend</title>
<link rel="icon" type="image/svg+xml" href="/favicon.svg">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32.png">
<link rel="alternate icon" href="/favicon.ico">
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&family=Fraunces:ital,wght@0,300;0,500;0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap" rel="stylesheet">