Rxova
Skip to content

rxova

The tricky React inputs, done right. Headless, accessible, zero-dependency React input components that each solve a problem the ecosystem keeps getting wrong — correct localized formatting, exact fractional ratings, and a true one-time-code field. The same design principles throughout: one native <input> where it matters, native form submission, keyboard and screen-reader support, and a small typed API backed by tests. No stylesheet to import.

Currency

A currency <input> that is correct in every language — Bulgarian spaces, Japanese yen, Hindi lakhs, Arabic digits — because it reads every locale fact from Intl.NumberFormat instead of hardcoding “a comma every three digits”. No cursor jumps.

Rating

Exact partial fills for any icon — SVG, emoji, images or custom JSX — that becomes a fully accessible input the moment you add onChange. One component, two modes: a read-only score and an interactive form control.

OTP

A one-time-code input with one native <input> underneath and slots painted on top — so paste, SMS autofill, IME and native form submission come from the platform, and you can tap any slot to edit it.

Every component in the suite emits a plain value from onChange (a number, a number, and a string respectively), posts natively under name, ships zero runtime dependencies and no stylesheet, and is documented with a live playground plus an API reference generated from source with TypeDoc.