import satori from "satori"; import React from "react"; import { readFile } from "node:fs/promises"; import { Resvg } from "@resvg/resvg-js"; export const generateOpenGraph = async ( title: string, description: string, date?: Date, ) => { const nixLogoSvg = await readFile("./public/svg/nix.svg", "utf-8"); const nixLogoDataUrl = `data:image/svg+xml;base64,${Buffer.from(nixLogoSvg).toString("base64")}`; const formattedDate = date ? new Date(date).toLocaleDateString("en-GB", { year: "numeric", month: "long", day: "numeric", }) : null; const svg = await satori(
{description.length <= 100 ? description : description.substring(0, 97) + "..."}
{formattedDate && (