Measured entry
tripled-browse-folder-shadcnui
tabsminimal-flatmotion on file
An animated folder browser built as controlled tabs, with horizontally scrollable folder triggers, custom content slots, a label, and an action button. It ships as a client-side shadcn registry component plus a sample-data wrapper, and relies on React, Framer Motion, Lucide icons, Tailwind theme classes, and local shadcn Badge, Button, and Tabs primitives.



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 | 0 |
| Uncaught page errors | 0 |
| Horizontal overflow | clean at 375, 768, 1440 |
| Axe critical | 0 |
| Axe serious | 0 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 79.4 KB (144.8 KB build, 65.4 KB baseline) |
| Bare mode | FAIL |
| Provider required | NO |
| Demo used | written from the component source API |
What the harness recorded
BARE BUILD
✗ Build failed in 1m 25s error during build: [vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/components/ui/badge.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'
Verdict
A polished presentation component for a shallow set of folder-like categories, but not a functional file manager. It builds and mounts cleanly in the prepared harness, while a bare project fails because local shadcn utilities are absent. It needs a shadcn-style setup or equivalent local primitives and aliases.
Use it if
- You need a compact tabbed view for switching among named document or project groups.
- Your app already uses shadcn primitives and Tailwind theme tokens.
- You want entry and panel transitions and are comfortable keeping Framer Motion in the client bundle.
Skip it if
- You need a real filesystem browser with nested folders, selection, uploads, or file operations.
- Your project does not use shadcn or compatible local UI primitives and you do not want to recreate that setup.
- You want a lightweight static tab switcher without an animation dependency.
- Your folder names are not unique, since each name is used as both the tab value and React key.
Install
| Declared dependencies | framer-motion, react, radix-ui |
|---|---|
| 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 React, Framer Motion, Lucide React, Tailwind styling with the referenced theme tokens, accessible tab primitives, and equivalents for Badge and Button. Configure the local component alias and class-merging utility used by those primitives, or rewrite the imports and styles for your design system.
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/moumen-soliman/uitripledAlternatives
Other published entries for the tabs pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- tripled-native-tabs-carbonminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 69.9KB
- Bare
- pass
- Prov
- NO
- shadcn-tabsunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 22.4KB
- Bare
- fail
- Prov
- NO
- neobrutalism-paginationbrutalism
- Renders
- YES
- A11y
- 0
- Gzip
- 28.0KB
- Bare
- fail
- Prov
- NO
- shadcn-paginationunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 28.1KB
- Bare
- fail
- Prov
- NO
- originui-comp-109minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 35.1KB
- Bare
- fail
- Prov
- NO
- originui-comp-110minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 35.1KB
- Bare
- fail
- Prov
- NO