// Generate the social preview image (public/og.png, 1200x630) from an inline SVG. // Run: node scripts/gen-og.mjs (or: npm run gen:og) // Self-hosted asset → no third-party OG service, nothing external at runtime. import sharp from "sharp"; import { fileURLToPath } from "node:url"; const out = fileURLToPath(new URL("../public/og.png", import.meta.url)); const W = 1200; const H = 630; const svg = ` ~/ INFRASTRUCTURE & DEVOPS ENGINEER Jonathon Wright Secure Kubernetes platforms · automated fleets · GPU-backed edge systems Talos · Kubernetes · GitOps · Ansible · Edge AI www.bztmon.com `; await sharp(Buffer.from(svg)).png().toFile(out); console.log("wrote", out);