--- /** * The resume: at a glance with the PDF, highlights, skills and education in * the sidebar, and the experience timeline. Every word comes from the Resume * notes and the /resume Page text; the PDF is built from the same data. */ import Button from "@gk/ui/components/Button.astro"; import Chip from "@gk/ui/components/Chip.astro"; 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 Star from "@gk/ui/components/Star.astro"; import StarPath from "@gk/ui/components/StarPath.astro"; import TickRing from "@gk/ui/components/TickRing.astro"; import TickScale from "@gk/ui/components/TickScale.astro"; import { site } from "../lib/page.ts"; import { listOf, period, resumeData } from "../lib/resume.ts"; import { formatDate } from "../lib/site.ts"; const s = await site(); const r = resumeData(s); const caseStudies = s.caseStudies(); const isCore = (group: { core?: string[] }, item: string) => group.core?.some((c) => c.toLowerCase() === item.toLowerCase()) ?? false; ---
RESUME AT A GLANCE

{r.name}

{[r.headline, r.location].filter(Boolean).join(" · ")}

{r.summary &&

{r.summary}

}
{ r.stats.length > 0 && (
{r.stats.map((st) => (
{st.value} {st.label} {st.detail && {st.detail}}
))}
) } {r.stats.length > 0 &&
}

Experience

{ r.roles.map((role, i) => (
{i === 0 && !role.data.end && }

{role.data.role}

{period(role)}
{role.data.company}{role.data.location ? ` · ${role.data.location}` : ""} {role.data.previousRoles?.length ? ( Previously {listOf(role.data.previousRoles)} ) : null} {role.data.focus && {role.data.focus}}
    {role.data.bullets.map((b) => (
  • {b}
  • ))}
{role.data.tech?.length ? (
{role.data.tech.map((t) => ( {t} ))}
) : null}
)) }
{ r.earlier.length > 0 && (

Earlier

    {r.earlier.map((role) => (
  • {role.data.role} {period(role)}
    {role.data.company} {role.data.focus && {role.data.focus}}
  • ))}
) } { r.projects.length > 0 && (

Selected projects

    {r.projects.map((p) => (
  • {p.link ? {p.title} : {p.title}} · {p.detail}
  • ))}
) } {caseStudies.length > 0 && }