// Run: node scripts/gen-icons.mjs // Generates public/icon-192.png and public/icon-512.png from public/icon.svg // Requires: npm install --save-dev sharp import sharp from 'sharp'; import { readFileSync } from 'fs'; import { fileURLToPath } from 'url'; import { dirname, join } from 'path'; const root = join(dirname(fileURLToPath(import.meta.url)), '..'); const svg = readFileSync(join(root, 'public/icon.svg')); for (const size of [192, 512]) { await sharp(svg) .resize(size, size) .png() .toFile(join(root, `public/icon-${size}.png`)); console.log(`icon-${size}.png created`); }