Skip to content

feat(web,ui): shadcn Empty, Kbd, and Switch adoption across signed-in surfaces - #799

Merged
Zach Dunn (zachdunn) merged 7 commits into
mainfrom
claude/shadcn-ui-components-9218e6
Aug 23, 2026
Merged

feat(web,ui): shadcn Empty, Kbd, and Switch adoption across signed-in surfaces#799
Zach Dunn (zachdunn) merged 7 commits into
mainfrom
claude/shadcn-ui-components-9218e6

Conversation

@zachdunn

@zachdunn Zach Dunn (zachdunn) commented Aug 23, 2026

Copy link
Copy Markdown
Member

Continues the Tailwind v4 + shadcn migration: adds the missing Empty and Kbd primitives to the kit and adopts them (plus the already-shipped Switch look) across the signed-in surfaces, and fixes the visibly unstyled code example on the homepage.

What's here

Kit (packages/ui)

  • Empty (+ Header/Media/Title/Description/Content) and Kbd/KbdGroup, generated via the shadcn CLI (base-nova, same as the rest of the kit); wired into tsup entries and the /dev/ui-kit workbench. tooltip.tsx and input-group.tsx already carried data-slot=kbd selector hooks — they now have a component to match.

React islands

  • WorkspaceFileTable: true empty states ("No files yet." / "No files match these filters.") render through Empty; end-of-list markers stay as plain .wft-end lines. The search input gains a visible Kbd hint and / + ⌘K/Ctrl+K focus shortcuts (hydration-safe platform label).
  • ScreenshotsByPath: the "No screenshots yet" CTA rebuilt on Empty (copy-command button preserved); drill/filter empties use a compact variant; the existing ⌘K shortcut finally gets a visible hint in the filter input.

Astro signed-in pages (no React)

  • New renderEmptyStateHtml() builder in workspace-ui.ts emits the same data-slot/Tailwind markup as the React component, with card and inline variants + tests. Adopted at galleries, developers tokens, workspaces list, and profile sessions. The old .ws-empty-state* CSS is fully retired.
  • The three comment-settings toggles swap bespoke .cs-toggle CSS for the shadcn Switch's classes keyed off aria-checked — identical visuals to the kit Switch, zero behavior changes (script targets ids only).

Homepage

  • .example-screen ("Which page was that?") never set the mono stack, so it rendered in the sans font — fixed, and the duplicated inline-code chip rules are consolidated.

Fix in passing

Deliberately deferred: the shadcn Sidebar block for the signed-in shell — tracked in #798 (it would mean converting the Astro shell to a React island; discussion queued for after this adoption settles).

Screenshots

Settings toggles (shadcn Switch look) Screenshots filter with ⌘K hint
Comment settings with shadcn-style switches Screenshots page filter input with a visible command-K hint
Galleries empty state Developers tokens empty state
Galleries empty state on the shared Empty markup Developers page No tokens yet inline empty state

Homepage example snippet now rendered in the mono stack

Verification

  • tsc --noEmit clean; full web vitest suite 848/848; repo format:check clean.
  • Browser-verified locally: UI-kit sections, files/screenshots empties + shortcuts (/ focuses search, toggle click roundtrips aria-checked), galleries/developers empties, homepage snippet.

@changeset-bot

changeset-bot Bot commented Aug 23, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 92257de

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@uploads-sh

uploads-sh Bot commented Aug 23, 2026

Copy link
Copy Markdown

127.0.0.1-account-developers-empty.webp
/account/developers · empty

127.0.0.1-account-workspaces-dev-demo-galleries-empty.webp
/account/workspaces/dev-demo/galleries · empty

127.0.0.1-account-workspaces-dev-demo-screenshots-after.webp
/account/workspaces/dev-demo/screenshots · after

127.0.0.1-account-workspaces-dev-demo-settings-after.webp
/account/workspaces/dev-demo/settings · after

127.0.0.1-after.webp
after

Maintained by uploads.sh · add media: uploads put <file> --pr 799 · docs

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 23, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
uploads-auth 92257de Commit Preview URL

Branch Preview URL
Aug 23 2026, 03:05 PM

@coderabbitai

coderabbitai Bot commented Aug 23, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (2)
  • coderabbit:review
  • review
🚫 Excluded labels (none allowed) (1)
  • wip

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 306ee05a-3902-4c79-84da-5d893b4dc037

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 23, 2026

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
uploads-web 92257de Commit Preview URL

Branch Preview URL
Aug 23 2026, 03:05 PM

@zachdunn
Zach Dunn (zachdunn) merged commit 472dd43 into main Aug 23, 2026
5 checks passed
@zachdunn
Zach Dunn (zachdunn) deleted the claude/shadcn-ui-components-9218e6 branch August 23, 2026 15:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant