Measured entry
ruixen-avatar-quick-actions
A client-side React avatar that reveals icon actions in an animated radial orbit on pointer hover. It ships as a shadcn registry component and relies on Motion, the shadcn Avatar primitive, a cn utility, Tailwind classes, and theme color tokens.



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 | 1 |
| Axe serious | 0 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 76.2 KB (141.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
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 100ms error during build: [vite]: Rollup failed to resolve import "lucide-react" from "<sandbox>re-8539953680ca/src/cut/demo.jsx".
Verdict
A clever profile-action treatment, but not production-ready as supplied. The hover-only trigger and unnamed buttons need fixes, and the demo evidence is blank. It also needs a shadcn-style setup before it will build or mount in a bare React project.
Use it if
- You need compact, secondary actions around a profile avatar in a pointer-first interface.
- Your app already uses shadcn conventions, Tailwind theme tokens, and Motion.
- You can add accessible names and provide another way to expose the actions for keyboard and touch users.
Skip it if
- The actions must work without hover, such as on touch screens or in keyboard-only navigation.
- You need accessible output without modifying the source, because the icon buttons have no discernible names.
- You want a dependency-light badge or avatar, since the animation stack adds substantial bundle weight.
- You need a trustworthy copy-paste demo, because the captured demo rendered blank and its avatar assets failed to load.
Install
| Declared dependencies | motion, 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 Motion and Radix Avatar support, provide compatible Avatar components, create the cn helper with clsx and tailwind-merge, configure Tailwind, and define the referenced theme tokens. Also add accessible button labels, keyboard and focus behavior, a touch trigger, and real avatar assets.
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/ruixenui/ruixen.comAlternatives
Other published entries for the badge pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- neu-badgeneumorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 17.5KB
- Bare
- pass
- Prov
- NO
- clay-badgeclaymorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 17.9KB
- Bare
- pass
- Prov
- NO
- ruixen-load-rippleunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 17.9KB
- Bare
- pass
- Prov
- NO
- kibo-listminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 42.4KB
- Bare
- pass
- Prov
- NO
- ruixen-blurred-stagger-textunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 58.1KB
- Bare
- pass
- Prov
- NO
- tripled-auto-revealing-heading-shadcnuiminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 58.3KB
- Bare
- pass
- Prov
- NO