Measured entry
ruixen-glass-ai-card
buttonliquid-glassmotion on file
A client-side React card that pairs animated skeleton rows with a liquid-glass action button. It ships as a shadcn registry file with its styles embedded in the component, depends on Motion for button feedback, and optionally uses the browser Web Audio API for a click sound.



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 | 59.5 KB (124.9 KB build, 65.4 KB baseline) |
| Bare mode | OK |
| Provider required | NO |
| Demo used | written from the component source API |
Verdict
A focused, working choice for an AI generation placeholder or action card. It mounts without framework scaffolding and exposes the useful behavior as props, but teams should account for its perpetual animation, default click sound, and narrow skeleton-first purpose.
Use it if
- You need a compact placeholder card with a clear generate or retry action.
- Your interface already uses soft glass surfaces and animated loading cues.
- You want configurable skeleton rows, action text, callback behavior, and optional sound in one component.
Skip it if
- The card must display real content rather than a fixed skeleton-like state.
- Your motion policy requires built-in reduced-motion handling.
- Your content security policy forbids component-injected inline styles.
- You do not want an animation dependency or browser audio behavior for a small action card.
Install
| Declared dependencies | motion |
|---|---|
| Missing on install | none |
| Bare install | builds and mounts without the shadcn-style helpers |
| Provider | no provider required in the harness |
In a non-shadcn React project, install Motion, copy the component into a client-capable module, and ensure the app permits its injected inline stylesheet. No provider is required. Disable the sound prop if browser audio is unwanted.
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 button pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- neu-buttonneumorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 17.8KB
- Bare
- pass
- Prov
- NO
- clay-buttonclaymorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 18.2KB
- Bare
- pass
- Prov
- NO
- tripled-animated-radio-shadcnuiminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 58.2KB
- Bare
- pass
- Prov
- NO
- ruixen-glow-link-buttonliquid-glass
- Renders
- YES
- A11y
- 0
- Gzip
- 58.9KB
- Bare
- pass
- Prov
- NO
- tripled-mood-gradient-button-shadcnuigradient-glow
- Renders
- YES
- A11y
- 0
- Gzip
- 59.2KB
- Bare
- pass
- Prov
- NO
- ruixen-add-to-cart-buttonunclassified
- Renders
- YES
- A11y
- 0
- Gzip
- 60.4KB
- Bare
- pass
- Prov
- NO