Measured entry
originui-comp-51
A client-side React password input with a visibility toggle, live strength meter, and requirement checklist. It ships as a shadcn registry component and relies on local Input and Label primitives, Tailwind utilities and theme tokens, React state hooks, Lucide icons, and the declared Radix UI dependency used by its primitives.



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.0 KB (95.4 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 7.18s error during build: [vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/components/ui/input.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'
Verdict
A useful starting point for shadcn-based account forms, with clear feedback and a sensible interaction model. It needs a shadcn-style setup to build and mount, and the visibility button's broken control reference must be corrected before accessibility-sensitive use.
Use it if
- You need a password creation or reset field that explains unmet rules while the user types.
- Your app already uses shadcn-style local primitives, Tailwind theme tokens, and import aliases.
- Your password policy matches the embedded checks or your team is willing to adapt them.
Skip it if
- You need a drop-in package for a project without Tailwind, local UI primitives, or shadcn-style aliases.
- You require an accessibility-approved component without modification, since the visibility button references a control identifier that the input does not use.
- You need entropy-based strength estimation, breached-password checks, or a centrally managed password policy rather than a simple local rule score.
Install
| Declared dependencies | radix-ui |
|---|---|
| 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, Lucide React, Radix UI, Tailwind utilities and the expected theme tokens. Supply compatible Input and Label primitives, configure the import alias, and add the class-merging utility expected at the local utils path. Also make the visibility button reference the generated input identifier.
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