--- /** * About me: the "I am Greg" intro beside the portrait, the longer story with * quick facts and what is happening right now, the two wings of the site, and * where else to find Greg. Text from the Page text note for /about. */ import GiltCorners from "@gk/ui/components/GiltCorners.astro"; import Icon from "@gk/ui/components/Icon.astro"; import PageShell from "@gk/ui/components/PageShell.astro"; import Seal from "@gk/ui/components/Seal.astro"; import SectionHeading from "@gk/ui/components/SectionHeading.astro"; import Star from "@gk/ui/components/Star.astro"; import TickScale from "@gk/ui/components/TickScale.astro"; import PageHero from "../components/PageHero.astro"; import DoorLink from "../components/home/DoorLink.astro"; import Portrait from "../components/home/Portrait.astro"; import { splitIntro, viewStatus } from "../lib/home.ts"; import { brandIcon } from "../lib/site.ts"; import { site } from "../lib/page.ts"; import { formatDate } from "../lib/site.ts"; const s = await site(); const text = s.pageText("/about"); const settings = s.settings(); const { intro, sections } = splitIntro(text?.body ?? ""); const introHtml = s.render(intro); const facts = text?.data.quickFacts ?? []; const now = s.statuses().slice(0, 4).map((st) => viewStatus(s, st)); const nowUpdated = now.map((v) => v.date).sort().pop(); const socials = settings?.socials ?? []; const SOCIAL_ICONS: Record = { github: "web", linkedin: "briefcase", archidekt: "proxy-cards" }; ---
{introHtml ?
:

[PLACEHOLDER]

}
{ sections.map((sec, i) => (
{sec.heading}
)) }
Two wings of the same house
For friends and fellow nerds

My world