~bigbes/lethe

dcafcb245c4d2e39d35dc6be5c9c301a8e66e6a2 — Eugene Blikh a month ago 34867fb
web: add lambda favicon (svg + ico + apple-touch-icon)

Introduces the project mark — a Greek capital lambda Λ (initial of
Λήθη / Lethe) standing above a stylized rust ripple on a deep ink
plate. Reads as a glyph at 16 px; the ripple and inner rim emerge
at 32 px and above.

Three formats are shipped via web/public/ so Vite copies them
verbatim into the embedded dist bundle:

  - favicon.svg          canonical 64x64 vector source
  - favicon.ico          16/32/48 multi-resolution legacy fallback
  - apple-touch-icon.png 180x180 iOS home-screen bookmark

The ICO and PNG were rasterized from the SVG with rsvg-convert
(ImageMagick's built-in MSVG renderer drops strokes); magick is
only used to assemble the multi-image ICO container.

The dist/ placeholder index.html is regenerated alongside so a
fresh clone that hasn't run web-build yet still serves the icon
links from the committed fallback HTML.
M internal/server/web/dist/index.html => internal/server/web/dist/index.html +3 -0
@@ 3,6 3,9 @@
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
    <link rel="icon" type="image/x-icon" href="/favicon.ico" sizes="any" />
    <link rel="apple-touch-icon" href="/apple-touch-icon.png" />
    <title>Lethe</title>
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />

M web/index.html => web/index.html +3 -0
@@ 3,6 3,9 @@
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
    <link rel="icon" type="image/x-icon" href="/favicon.ico" sizes="any" />
    <link rel="apple-touch-icon" href="/apple-touch-icon.png" />
    <title>Lethe</title>
    <link rel="preconnect" href="https://fonts.googleapis.com" />
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />

A web/public/apple-touch-icon.png => web/public/apple-touch-icon.png +0 -0
A web/public/favicon.ico => web/public/favicon.ico +0 -0
A web/public/favicon.svg => web/public/favicon.svg +12 -0
@@ 0,0 1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" shape-rendering="geometricPrecision">
  <title>Lethe</title>
  <rect width="64" height="64" rx="10" fill="#0E1014"/>
  <rect x="3.5" y="3.5" width="57" height="57" rx="8" fill="none" stroke="#1F2128" stroke-width="1"/>
  <path d="M 14 50 L 32 12 L 50 50"
        fill="none" stroke="#EDE6D3" stroke-width="7"
        stroke-linecap="round" stroke-linejoin="round"/>
  <path d="M 10 58 Q 21 54 32 58 T 54 58"
        fill="none" stroke="#B5532A" stroke-width="2.5"
        stroke-linecap="round"/>
</svg>