Measured entry
kokonut-ai-voice
carddark-futuristicmotion on file
A client-side React voice-control card distributed through a shadcn registry. It uses Tailwind utility classes, Lucide for the microphone icon, and the shadcn cn helper. Motion is declared as a dependency but is not imported by the component. Its timer and waveform simulate listening state rather than capture audio.



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 | 1 |
| Axe serious | 0 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 30.9 KB (96.4 KB build, 65.5 KB baseline) |
| Bare mode | OK |
| Provider required | NO |
| Demo used | written from the component source API |
Verdict
A tidy, responsive shell for showing an idle or listening state, but it is only presentation logic. It needs a shadcn-style setup, real audio behavior, an accessible button name, and contrast fixes before production use. Also review whether the unused declared motion dependency should remain.
Use it if
- You need a compact push-to-speak visual for a voice assistant mockup.
- Your app already has shadcn-style aliases, utilities, and Tailwind dark-mode styling.
- You plan to connect the control to your own recording, permission, and transcription logic.
Skip it if
- You need working microphone capture or audio processing out of the box.
- You require an accessible production control without first adding a button label and correcting low-contrast text.
- You want a framework-neutral component with no shadcn path alias or utility helper.
- You do not want a demo animation that starts automatically and must be removed or adapted.
Install
| Declared dependencies | motion, lucide-react, clsx, tailwind-merge |
|---|---|
| Missing on install | none |
| Bare install | builds and mounts without the shadcn-style helpers |
| Provider | no provider required in the harness |
For a non-shadcn project, add React client-component support, Tailwind utilities with dark-mode handling, the at-sign source alias, a lib/utils module exporting cn, and Lucide React. The registry also declares Motion, though this component does not import it. Then replace the simulated timer loop with your audio workflow.
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/kokonut-labs/kokonutuiAlternatives
Other published entries for the card pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- tailark-veil-content-1minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 17.6KB
- Bare
- pass
- Prov
- NO
- tailark-veil-content-2minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 17.6KB
- Bare
- pass
- Prov
- NO
- tailark-mist-content-3minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 24.1KB
- Bare
- pass
- Prov
- NO
- neobrutalism-cardbrutalism
- Renders
- YES
- A11y
- 0
- Gzip
- 29.6KB
- Bare
- pass
- Prov
- NO
- neobrutalism-ncardbrutalism
- Renders
- YES
- A11y
- 0
- Gzip
- 29.6KB
- Bare
- pass
- Prov
- NO
- reui-icon-stackminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 30.1KB
- Bare
- pass
- Prov
- NO