Measured entry
tripled-native-image-checkbox-shadcnui
checkboxminimal-flatmotion on file
A copy-in React client component that turns an image avatar into a controlled selectable tile, using grayscale, scale, overlay, ring, and check animations to show state. It ships through a shadcn registry and depends on the shadcn Avatar and cn utilities, Tailwind classes, Motion, and a Lucide icon.



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 | 74.2 KB (139.7 KB build, 65.5 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 950ms error during build: [vite]: Rollup failed to resolve import "lucide-react" from "<sandbox>re-d87c80f3be6b/src/cut/components/uitripled/native-image-checkbox-shadcnui.tsx".
Verdict
A polished visual picker for an existing shadcn stack, but not a complete accessible checkbox as written because interaction lives on a clickable div. It needs a shadcn-style setup, and its Lucide import must be installed even though the registry does not declare it.
Use it if
- You need visual selection tiles for avatars, products, covers, or media choices.
- Your app already uses shadcn aliases, Tailwind styling, Motion, and controlled React state.
- You want image fallback initials and animated selected and unselected states out of the box.
Skip it if
- You need native checkbox semantics, keyboard operation, or form submission without modifying the component.
- You want to avoid adding Motion for a small selection control.
- Your design system does not use shadcn path aliases or its Avatar primitive.
- You need configurable colors or shapes without overriding fixed utility classes.
Install
| Declared dependencies | framer-motion, react, radix-ui, clsx, tailwind-merge |
|---|---|
| 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 Tailwind processing and the source's path aliases, provide compatible Avatar and cn utilities, then install React, Motion, Lucide React, Radix UI, clsx, and tailwind-merge. Alternatively, replace the aliased helpers with local equivalents and wrap the interaction in a keyboard-accessible checkbox control.
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 checkbox pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- neu-checkboxneumorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 17.9KB
- Bare
- pass
- Prov
- NO
- clay-checkboxclaymorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 18.2KB
- Bare
- pass
- Prov
- NO
- shadcn-checkboxunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 18.4KB
- Bare
- fail
- Prov
- NO
- originui-comp-132minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 32.5KB
- Bare
- fail
- Prov
- NO
- originui-comp-135minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 32.5KB
- Bare
- fail
- Prov
- NO
- originui-comp-140minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 32.5KB
- Bare
- fail
- Prov
- NO