foolish-bandit/gary: shadcn/ui component layer added to the frontend

Commit `58ef971c` introduces `frontend/src/components/ui/` with seven shadcn/ui primitives and wires them into the Explain This page, globals.css, and layout. This is the first structural divergence from upstream Mike's plain-Tailwind approach.

chat-uiinfrastructure

The seven components are alert.tsx, card.tsx, label.tsx, separator.tsx, skeleton.tsx, tabs.tsx, and textarea.tsx. They're standard shadcn copies backed by Radix UI. @radix-ui/react-tabs (or the relevant peer) is added to package.json. globals.css picks up the shadcn CSS variable/token block.

The /explain/page.tsx in this commit imports Button, Card, CardContent, Input, Textarea, Label, Alert, AlertDescription, and Separator from @/components/ui/*. The page is 169 lines -- an updated version of the /explain shell from commit b3287856, now built on the new primitives rather than plain Tailwind elements. The /draft and /review pages also receive small touches to consume the new components.

The commit tree here is slightly tangled. 58ef971c was developed on a branch that also held the b3287856 Explain This shell, so the page diff shows 169 lines added to explain/page.tsx even though that file was already present in main from the earlier merge. An intermediate ad2c41de resolves main-branch churn. 98f33256 is the final merge to main via PR #15.

The Mike upstream has no shadcn/ui layer -- it's plain Tailwind throughout. Adding this is a real architectural decision. Every subsequent patch from this fork will assume @/components/ui/* is available, so adopting this component layer is a prerequisite for cleanly importing future work from foolish-bandit.

So what Worth a look if you're building toward a guided-UX product and want a component foundation. Be cautious about the `globals.css` changes -- the shadcn token block may conflict with existing design tokens. Check those diffs manually before merging. Skip it if you want to stay on plain Tailwind; the functional changes (Explain This page, UX fixes) are all available without the component layer via the earlier `b3287856` commit.

View this fork on GitHub →

Spotted something wrong? Or know the PR text has fresher detail than the writeup above?

Commits in this thread

3 commits from foolish-bandit/gary, oldest first. Source extracted verbatim from the harvested git log.

SHA Subject Author Date
58ef971c Add shadcn/ui foundation components Zack Brenner 2026-05-07 ↗ GitHub
ad2c41de Merge branch 'main' into codex/create-pr-#10-frontend-polish-and-bugfix-x4l6hb Zack Brenner 2026-05-07 ↗ GitHub
98f33256 Merge pull request #15 from foolish-bandit/codex/create-pr-#10-frontend-polish-and-bugfix-x4l6hb Zack Brenner 2026-05-07 ↗ GitHub
Add "Explain This" page, UI primitives, Inter font, and assorted UI fixes

Capture this thread into my fork

Download a single Markdown prompt that tells Claude how to port every commit above into your working tree — adapting paths and structure to match your repo. Run it via claude -p < capture-thread-168.md from inside the repo you want the changes in.

⬇ Download capture-thread-168.md