#!/usr/bin/env bun
/** Writes sample social cards to /tmp/og-samples for visual review: `bun run scripts/og-samples.tsx`. */
import { mkdirSync, readFileSync, writeFileSync } from "node:fs";
import { join } from "node:path";
import { FEATURE_PAGES } from "~/lib/marketing/features";
import { AccountCard, FeatureCard, RepoCard, SiteCard } from "~/server/og/cards";
import { loadRuntimeFromDisk } from "~/server/og/disk-runtime";
import { renderPng } from "~/server/og/render";
const OUT = "/tmp/og-samples";
const HOST = "gitfor.dev";
const avatar = `data:image/png;base64,${readFileSync(join(import.meta.dir, "../public/android-chrome-512x512.png")).toString("base64")}`;
const runtime = loadRuntimeFromDisk();
const samples = {
site: <SiteCard host={HOST} />,
"repo-full": (
<RepoCard
host={HOST}
avatar={avatar}
repo={{
owner: "taigrr",
name: "stig",
description:
"Open-source Git hosting on Cloudflare Workers: repositories, pull requests and code review, Actions-style CI, issues, security scanning and static sites, all in one deployable Worker you can run yourself.",
stars: 12_480,
forks: 431,
openIssues: 27,
openPulls: 1,
avatarKey: "sample",
latestRelease: "v1.4.0",
}}
/>
),
"repo-minimal": (
<RepoCard
host={HOST}
avatar={null}
repo={{
owner: "someone",