diff --git a/src/components/CircuitDivider.astro b/src/components/CircuitDivider.astro new file mode 100644 index 0000000..e7a6038 --- /dev/null +++ b/src/components/CircuitDivider.astro @@ -0,0 +1,47 @@ +--- +// Circuit divider — gradient hairlines meeting two rotated-square "diamonds" +// (cyan, magenta). Pure CSS, from the design handoff. +--- + +
+ + diff --git a/src/components/DossierThumb.astro b/src/components/DossierThumb.astro new file mode 100644 index 0000000..8f01210 --- /dev/null +++ b/src/components/DossierThumb.astro @@ -0,0 +1,83 @@ +--- +// House-style mini-diagram for a dossier card thumbnail. Keyed by the project's +// `diagram` frontmatter; each motif is a tiny node/line sketch in the board palette. +// Pure SVG, pulsing cores only (reduced-motion turns them off). +interface Props { + kind?: string; +} +const { kind = "generic" } = Astro.props; +--- + + + + diff --git a/src/components/Footer.astro b/src/components/Footer.astro index 8c59304..92c67df 100644 --- a/src/components/Footer.astro +++ b/src/components/Footer.astro @@ -1,12 +1,23 @@ --- import { site } from "../data/site"; import { socials } from "../data/socials"; +import { buildInfo } from "../lib/build-info"; const year = 2026; // build-stamped; bump via the build, not a runtime Date() const linkedinHref = socials.find((s) => s.label === "LinkedIn")?.href; const emailHref = socials.find((s) => s.label === "Email")?.href; ---