Measured entry
originui-comp-150
A client-side checkbox styled as a compact sun and moon toggle. It ships as a copied TSX registry component and keeps only local React state, so it does not change or persist the application theme. It depends on React hooks, Lucide icons, and Tailwind-style utilities plus shadcn-like 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 | 0 |
| Uncaught page errors | 0 |
| Horizontal overflow | clean at 375, 768, 1440 |
| Axe critical | 0 |
| Axe serious | 1 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 18.3 KB (83.7 KB build, 65.4 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 617ms error during build: [vite]: Rollup failed to resolve import "lucide-react" from "<sandbox>re-abd9a40648e6/src/cut/components/ui/comp-150.tsx".
Verdict
A tidy visual starter that builds, mounts, and stays contained across the tested layouts, but it is only a local-state demo. Wire it to real theme state and fix the prohibited ARIA attribute before treating it as production-ready.
Use it if
- You want a compact icon control as the starting point for an existing theme switcher.
- Your project already provides Lucide icons and the utility classes and color tokens used by the component.
- You are prepared to connect its local checkbox state to your application theme provider.
Skip it if
- You need a complete dark-mode solution with persistence and document-level theme changes.
- You need an accessibility-clean component without first correcting the prohibited ARIA usage reported on its label.
- Your styling stack does not support peer and group state variants or shadcn-style design tokens.
Install
| Declared dependencies | none declared |
|---|---|
| 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 React and lucide-react, then provide equivalents for the utility classes, screen-reader-only input treatment, peer and group checked-state variants, focus styles, and the background, foreground, input, accent, and ring color tokens. Connect the checkbox to your theme system.
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/origin-space/originuiAlternatives
Other published entries for the input pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.
- clay-inputclaymorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 17.9KB
- Bare
- pass
- Prov
- NO
- neu-search-inputneumorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 18.1KB
- Bare
- pass
- Prov
- NO
- clay-search-inputclaymorphism
- Renders
- YES
- A11y
- 0
- Gzip
- 18.3KB
- Bare
- pass
- Prov
- NO
- originui-comp-33minimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 20.7KB
- Bare
- pass
- Prov
- NO
- hextaui-labelminimal-flat
- Renders
- YES
- A11y
- 0
- Gzip
- 31.3KB
- Bare
- pass
- Prov
- NO
- ruixen-circular-stepper-inputliquid-glass
- Renders
- YES
- A11y
- 0
- Gzip
- 61.1KB
- Bare
- pass
- Prov
- NO