Measured entry

cultui-metal-button

buttonliquid-glassmotion on file

A client-side React wrapper that puts an animated MetalFx ring around a shadcn Button and also exports an icon-button preset. It ships as a shadcn registry item and relies on metal-fx, the base Button, class-variance-authority, Tailwind styling, and the shared cn utility.

Specimen
Motion capture of the mounted demo, recorded by the harness. No audio track.
Harness screenshot of cultui-metal-button at 375 pixels wide
Harness screenshot at 375 pixels wide. No horizontal overflow recorded.
Harness screenshot of cultui-metal-button at 768 pixels wide
Harness screenshot at 768 pixels wide. No horizontal overflow recorded.
Harness screenshot of cultui-metal-button at 1440 pixels wide
Harness screenshot at 1440 pixels wide. No horizontal overflow recorded.

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.

Harness measurements recorded for cultui-metal-button
BuildOK
MountOK
Console errors0
Uncaught page errors0
Horizontal overflowclean at 375, 768, 1440
Axe critical0
Axe serious0
Axe moderate0
Axe minor0
Gzip marginal50.2 KB (115.7 KB build, 65.5 KB baseline)
Bare modeFAIL
Provider requiredNO
Demo usedwritten from the component source API

What the harness recorded

BARE BUILD

✗ Build failed in 893ms
error during build:
[vite]: Rollup failed to resolve import "class-variance-authority" from "<sandbox>re-44f00d4f5c3e/src/cut/components/ui/metal-button.tsx".

Verdict

It builds and mounts cleanly, including outside the prepared shadcn harness, and the checks found no accessibility violations or viewport overflow. The shader dependency adds meaningful weight, so this is best reserved for a signature call to action rather than adopted as the default button.

Use it if

  • You want a liquid-metal treatment for a small set of prominent actions.
  • Your project already has a compatible shadcn Button, Tailwind setup, and cn helper.
  • You need control over the metal preset, theme, strength, glow, pause state, or reflection targets.

Skip it if

  • Bundle restraint matters more than the animated shader effect.
  • You need the forwarded ref to point directly at the underlying button rather than its MetalFx wrapper.
  • Your design system does not use Tailwind utilities or the shadcn Button variant contract.
  • Most actions need a quiet, conventional appearance instead of a conspicuous animated accent.

Install

Installation record for cultui-metal-button
Declared dependenciesmetal-fx, radix-ui, clsx, tailwind-merge
Missing on installnone
Bare installfails once the shadcn-style helpers are removed, so it needs that setup
Providerno provider required in the harness

In a non-shadcn project, add metal-fx, class-variance-authority, clsx, and tailwind-merge, then provide a compatible Button component and cn helper. Configure the source aliases and Tailwind utility processing used by the component. No provider is required.

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.

Alternatives

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.