TypeScript 97.4%
SQL 1%
JavaScript 0.9%
CSS 0.6%
1#!/usr/bin/env bash2# Regenerates the raster brand assets from the SVG sources (needs librsvg: `brew install librsvg`).3set -euo pipefail4cd "$(dirname "$0")/.."5r() { rsvg-convert -w "$2" -h "$3" "$1" -o "$4"; echo " $4"; }6echo "Rendering brand assets…"7r public/icon.svg 32 32 public/favicon-32.png8r public/icon.svg 16 16 public/favicon-16.png9r public/icon.svg 180 180 public/apple-icon.png10r public/icon.svg 192 192 public/icon-192.png11r public/icon.svg 512 512 public/icon-512.png12r public/brand/icon-maskable.svg 512 512 public/icon-maskable-512.png13r public/brand/og.svg 1200 630 public/og.png14# Multi-size ICO for legacy user agents (Pillow optional).15python3 - <<'PY' || echo " (Pillow missing — favicon.ico skipped)"16from PIL import Image17im = Image.open("public/icon-512.png").convert("RGBA")18im.save("public/favicon.ico", sizes=[(16,16),(32,32),(48,48),(64,64)])19print(" public/favicon.ico")20PY21