From dce4fabb67054c6a90d34116155f99c24def9c67 Mon Sep 17 00:00:00 2001 From: Val Alexander Date: Mon, 28 Sep 2026 00:51:12 -0500 Subject: [PATCH] feat(specimens): link the repository from the site header Add a GitHub link next to search and the scheme toggle, matching spell-ui's header. It is a plain anchor styled with buttonVariants so it stays a link to assistive tech, opens in a new tab with rel="noopener noreferrer", and shares the scheme control's sizing: 36px on desktop, 44px under 68rem and on coarse pointers. lucide-react 1.x ships no brand marks, so the GitHub mark is inlined. Co-Authored-By: Claude Opus 5.5 --- apps/specimens/src/app.tsx | 26 ++++++++++++++++++++++++++ apps/specimens/src/specimens.css | 15 ++++++++++----- 2 files changed, 36 insertions(+), 5 deletions(-) diff --git a/apps/specimens/src/app.tsx b/apps/specimens/src/app.tsx index df60ffd..c1ff190 100644 --- a/apps/specimens/src/app.tsx +++ b/apps/specimens/src/app.tsx @@ -5,7 +5,9 @@ import { AttachmentChip, BudgetPill, Button, + buttonVariants, Card, + cn, ContextMeter, MetricDisplay, ModeSwitch, @@ -26,6 +28,7 @@ import { ArrowUpRight, Link2, Moon, SearchX, Sun, X } from "lucide-react"; import { type ReactNode, useEffect, useMemo, useRef, useState } from "react"; import { ComposerDemo, RunRailDemo } from "./block-demos"; +import { repository } from "./catalog"; import { CodeSnippet } from "./code-snippet"; import { ComponentPreview } from "./component-preview"; import { Lab } from "./lab"; @@ -37,6 +40,16 @@ import { } from "./examples"; const density = "compact"; + +// lucide-react 1.x no longer ships brand marks, so the GitHub mark is inlined. +function GitHubMark() { + return ( + + ); +} + type Scheme = "light" | "dark"; type SpecimenGroup = "Composer" | "Run rail" | "Blocks"; @@ -800,6 +813,19 @@ function App() { ) : null}
+ + +