Measured entry
hextaui-input
A single-line React input built with forwardRef and shipped as TypeScript source through a shadcn registry. It wraps the native input, adds sensible email and password text-entry defaults, and styles focus, invalid, disabled, file, and dark states through Tailwind classes. It depends on a local cn helper backed by clsx and tailwind-merge, plus shadcn theme 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 | flagged at 375 |
| Axe critical | 0 |
| Axe serious | 0 |
| Axe moderate | 0 |
| Axe minor | 0 |
| Gzip marginal | 29.9 KB (95.4 KB build, 65.5 KB baseline) |
| Bare mode | FAIL |
| Provider required | NO |
| Demo used | written from the component source API |
What the harness recorded
BARE BUILD
spawnSync npx ETIMEDOUT
Verdict
A sound, deliberately small native-input wrapper with useful state styling and no provider requirement. It builds and mounts in the prepared harness, but the bare check did not mount, so it needs a shadcn-style setup rather than being treated as a standalone drop-in.
Use it if
- You want a native input primitive that preserves refs and standard input props.
- Your forms need consistent focus, invalid, disabled, file-input, and dark-mode styling.
- Your app already uses Tailwind and shadcn-style theme tokens.
Skip it if
- You need a packaged control that works without copying source into your app.
- Your design system does not use Tailwind utilities or shadcn color tokens.
- You need built-in labels, help text, validation logic, masking, or multiline input behavior.
Install
| Declared dependencies | clsx, tailwind-merge |
|---|---|
| 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 Tailwind, create the cn utility with clsx and tailwind-merge, configure the import alias used by the source, and define the referenced border, ring, primary, foreground, muted, destructive, and input theme tokens. Copy the component source into the project and ensure dark-mode variants follow your Tailwind configuration.
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/preetsuthar17/HextaUIAlternatives
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