velxio/frontend/public/boards
davidmonterocrespo24 e0dbde0a76 feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip
Foundation
- Add 7 token CSS files in src/tokens/ — semantic colors, 4-pt spacing,
  Apple-HIG type ramp, radius/elevation/motion/z-index scales.
- Refactor src/index.css to import tokens and remap legacy aliases
  (--accent, --bg, etc.) onto the new --color-* semantics so existing
  components keep rendering during migration.
- Drop the duplicate font-family from src/App.css; body inherits from :root.
- Global *:focus-visible ring backed by --color-focus-ring (WCAG 2.4.7).

Webfonts (self-hosted)
- Add Inter.var.woff2 (variable, OFL) and JetBrainsMono.var.woff2 to
  public/fonts/. Preloaded in index.html with crossorigin.
- Old stack -apple-system kept as fallback so Mac users still get SF Pro.
- Fixes cross-OS rendering inconsistency (Win/Linux/Android were falling
  back to Segoe UI / Roboto, breaking the type grid).

Component primitives
- New src/components/ui/{Button,Card,Input}.tsx + .css. Built on the
  semantic tokens, ready for incremental migration of .ap-* CSS classes.

Lucide icons
- Replace 6 inline SVG icon components in LandingPage (IcoChip / IcoCpu /
  IcoCode / IcoZap / IcoLayers / IcoMonitor) with lucide-react imports.
  Aliased so call sites are unchanged. ~80 lines of inline SVG removed.
- IcoGitHub kept bespoke (filled glyph, brand-correct).

Marketing assets
- Convert top 8 boards to transparent PNG + WebP at 1x / 2x:
  Arduino Uno, Nano, Mega 2560, Pi Pico, Pi Pico W, ESP32-C3,
  ESP32-DevKit-V1, XIAO ESP32-S3.
- Migrate matching cards in LandingPage and Velxio2Page to <picture>
  with WebP > PNG > SVG fallback. Other 8 boards keep <img src=*.svg>
  for now (Raspberry Pi 3B, ESP32-CAM, etc.).
- Refresh og-image.png — same canonical URL, new content (4 hero boards
  + branding instead of generic logo card).
- Fix latent bug in LandingPage: ESP32 DevKit V1 card was loading
  esp32-devkit-c-v4.svg; now uses esp32-devkit-v1.{webp,png,svg}.

Build verified: npm run build:docker succeeds, 246 SEO pages prerender.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-07 20:45:44 +02:00
..
Raspberry_Pi_3.svg
arduino-mega.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-mega.svg Add SVG files for Arduino Nano and Arduino Uno boards 2026-03-23 12:19:25 -03:00
arduino-mega.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-mega@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-mega@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-nano-esp32.svg
arduino-nano.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-nano.svg Add SVG files for Arduino Nano and Arduino Uno boards 2026-03-23 12:19:25 -03:00
arduino-nano.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-nano@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-nano@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-uno.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-uno.svg feat: Mark subprojects as dirty in QEMU, RP2040, and Wokwi elements libraries 2026-03-23 12:51:25 -03:00
arduino-uno.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-uno@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
arduino-uno@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-c3.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-c3.svg
esp32-c3.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-c3@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-c3@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-cam.svg
esp32-devkit-c-v4.svg
esp32-devkit-v1.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-devkit-v1.svg fix(install): unblock self-hosting + drop forced wokwi clones 2026-05-04 00:04:11 -03:00
esp32-devkit-v1.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-devkit-v1@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-devkit-v1@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
esp32-s3.svg
esp32c3-rom.bin
esp32c3-supermini.svg
pi-pico-w.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
pi-pico-w.svg
pi-pico-w.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
pi-pico-w@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
pi-pico-w@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
pi-pico.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
pi-pico.svg
pi-pico.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
pi-pico@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
pi-pico@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
wemos-lolin32-lite.svg fix(install): unblock self-hosting + drop forced wokwi clones 2026-05-04 00:04:11 -03:00
xiao-esp32-c3.svg
xiao-esp32-s3.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
xiao-esp32-s3.svg
xiao-esp32-s3.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
xiao-esp32-s3@2x.png feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00
xiao-esp32-s3@2x.webp feat(design): tokens, webfonts, Lucide icons, board PNG/WebP picture strip 2026-05-07 20:45:44 +02:00