Measured entry
shadcn-block-sidebar-09
A client-side React mail layout built as a shadcn registry block. It combines a compact icon rail with a collapsible inbox panel, user menu, search, unread toggle, breadcrumb header, and content inset. It ships as page and component source and relies on shadcn sidebar and form primitives, Radix UI, class variance helpers, Lucide icons, Tailwind classes, theme variables, and the local utility alias.



Measured
Every value below was written by the harness on the run that produced the frames above. None of it is derived from the prose.
| Build | OK |
|---|---|
| Mount | OK |
| Console errors | 2 |
| Uncaught page errors | 0 |
| Horizontal overflow | clean at 375, 768, 1440 |
| Axe critical | 0 |
| Axe serious | 1 |
| Axe moderate | 2 |
| Axe minor | 0 |
| Gzip marginal | 72.0 KB (137.4 KB build, 65.4 KB baseline) |
| Bare mode | FAIL |
| Provider required | NO |
| Demo used | none |
What the harness recorded
CONSOLE
Failed to load resource: the server responded with a status of 404 (Not Found)
CONSOLE
Failed to load resource: the server responded with a status of 404 (Not Found)
BARE BUILD
✗ Build failed in 28.38s error during build: [vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/components/ui/breadcrumb.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'
Verdict
A solid application-shell reference for mail-style products, with responsive mounting and no observed overflow. It needs a shadcn-style setup, and it is not ready to drop into production until the contrast, duplicate or nested main landmarks, sample interactions, and missing asset requests are fixed.
Use it if
- You need an email or message workspace with primary navigation and a secondary item list.
- Your app already uses shadcn conventions and can replace the sample mail state with router and data logic.
- You want the secondary panel hidden on narrow screens while retaining an off-canvas navigation trigger.
Skip it if
- You need a generic navigation sidebar without an inbox-specific secondary pane.
- Your project cannot adopt shadcn path aliases, theme variables, and copied UI primitives.
- You require an accessibility-clean component without first correcting contrast and page landmark structure.
- You want production-ready data behavior rather than sample state, placeholder links, randomized lists, and a missing avatar asset.
Install
| Declared dependencies | radix-ui, class-variance-authority, lucide-react |
|---|---|
| Missing on install | none |
| Bare install | fails once the shadcn-style helpers are removed, so it needs that setup |
| Provider | no provider required in the harness |
In a non-shadcn project, add the sidebar, breadcrumb, separator, collapsible, dropdown menu, avatar, switch, and label primitives; install Radix UI, class variance helpers, and Lucide React; configure Tailwind and the shadcn theme variables; provide the local class-merging utility and import alias; then supply an avatar asset and reconcile the page-level main landmark with your shell.
Source and credit
This page is a review, not a copy. The component source lives with its author and this site does not republish it. Read the license before you use anything.
Author repository
github.com/shadcn-ui/uiAlternatives
Other published entries for the sidebar pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- magicui-file-treebento
- Renders
- YES
- A11y
- 0
- Gzip
- 45.4KB
- Bare
- fail
- Prov
- NO
- shadcn-block-sidebar-13minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 59.4KB
- Bare
- fail
- Prov
- NO
- tripled-animated-sidebar-shadcnuiminimal-flat
- Renders
- YES
- A11y
- 1
- Gzip
- 64.4KB
- Bare
- pass
- Prov
- NO
- shadcn-block-sidebar-14minimal-flat
- Renders
- YES
- A11y
- 2
- Gzip
- 58.4KB
- Bare
- fail
- Prov
- NO
- shadcn-block-sidebar-04minimal-flat
- Renders
- YES
- A11y
- 2
- Gzip
- 58.6KB
- Bare
- fail
- Prov
- NO
- shadcn-block-sidebar-03minimal-flat
- Renders
- YES
- A11y
- 2
- Gzip
- 58.7KB
- Bare
- fail
- Prov
- NO