Javier Cisneros

JCA Range

A React date-range field for forms that need both typed dates and calendar selection.

It coordinates masked inputs, strict date parsing, and predictable range transitions. DayPicker renders the calendar; JCA Range owns the field behavior and keeps the public value API independent from the calendar engine.

Design decisions

Predictable ranges

Range transitions follow a small tested state machine instead of depending on the calendar library's default behavior.

Typed and visual

Text input, parsing, formatting, and calendar selection stay synchronized across supported date formats.

Replaceable UI

Styling hooks and an unstyled mode let the field fit an existing design system without changing its behavior.