From ee948930fe44e805094deaa9f21e0d97f2a741b1 Mon Sep 17 00:00:00 2001 From: "Tommy D. Rossi" Date: Sat, 21 Feb 2026 15:58:21 +0100 Subject: [PATCH] website: move placeholders to src/assets for Vite base64 inlining, add LazyVideo component MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Placeholders are now generated into src/assets/placeholders/ instead of public/ so Vite's asset pipeline processes them. Since all are < 4KB, Vite auto-inlines them as base64 data URIs via assetsInlineLimit — zero extra HTTP requests for placeholders. - Static imports resolve to data:image/png;base64,... at build time - JSDoc on placeholder props documents why static imports are required (synchronous availability, Vite inlining) and warns against dynamic imports and public/ paths - New LazyVideo component: same pixelated poster pattern, uses native