mirror of
https://github.com/bookorbit/bookorbit.git
synced 2026-11-03 00:11:37 -06:00
22ac06ecd7
Add vite-plugin-pwa with Workbox in generateSW mode. Includes a web app manifest (standalone display, shortcuts for Dashboard/Libraries/Settings), iOS meta tags, and a service worker that pre-caches the app shell and uses CacheFirst for book cover and thumbnail endpoints (max 200 entries, 30-day TTL). Add useInstallPrompt composable that captures the beforeinstallprompt event and exposes isInstallable/installApp. Wire an install button into SidebarFooter that appears only when the browser signals the app is installable. Generate PWA icons (64, 192, 512, maskable-512, apple-touch-icon-180) from a new pwa-icon-source.svg using @vite-pwa/assets-generator with minimal2023Preset. Add dev-dist to .gitignore to exclude the dev-mode SW output.
26 lines
938 B
XML
26 lines
938 B
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="512" height="512">
|
|
<defs>
|
|
<linearGradient id="bg" x1="0%" y1="0%" x2="100%" y2="100%">
|
|
<stop offset="0%" stop-color="#2c2c22"/>
|
|
<stop offset="100%" stop-color="#1a1a10"/>
|
|
</linearGradient>
|
|
</defs>
|
|
<rect width="512" height="512" rx="96" fill="url(#bg)"/>
|
|
<!-- Orbit icon (Lucide), 24x24 viewBox scaled to fill ~252x252 of safe zone, centered -->
|
|
<!-- transform: scale(14), translate(88,88) => visual extent ~130-382 per axis -->
|
|
<g
|
|
transform="translate(88, 88) scale(14)"
|
|
fill="none"
|
|
stroke="rgba(255,255,255,0.9)"
|
|
stroke-width="1.5"
|
|
stroke-linecap="round"
|
|
stroke-linejoin="round"
|
|
>
|
|
<path d="M20.341 6.484A10 10 0 0 1 10.266 21.85"/>
|
|
<path d="M3.659 17.516A10 10 0 0 1 13.74 2.152"/>
|
|
<circle cx="12" cy="12" r="3"/>
|
|
<circle cx="19" cy="5" r="2"/>
|
|
<circle cx="5" cy="19" r="2"/>
|
|
</g>
|
|
</svg>
|