Introduction
Installation
Next.jsViteLaravelReact RouterRemixAstroTanStack StartTanStack RouterManual InstallationMCP
All componentsTheme
FieldFormInputText FieldTextareaSearch FieldInput OTPNumber FieldNumber FormatSliderCheckboxSwitchRadioSelectCombo BoxList BoxChoice BoxMulti SelectToken FieldNewTag FieldTag GroupCalendarDate FieldDate PickerDate Range PickerRange CalendarTime FieldColor PickerColor FieldColor AreaColor SliderColor SwatchColor Swatch PickerColor ThumbColor WheelDrop ZoneFile Trigger
ButtonButton GroupToggleToggle GroupPreskok Auth Button
EditorHeadingLinkTextKeyboard
CardContainerGrid ListResizableTableTreeSeparatorDescription ListScroll AreaShow MoreToolbar
BreadcrumbsNavbarPaginationTabsSidebar
DialogModalDrawerPopoverPreview TriggerNewSheetTooltipContext MenuDropdownCommandCommand MenuDisclosureMenu
ToastProgress BarProgress CircleMeterLoaderSkeletonNoteBadge
Chart (helpers)Area ChartBar ChartLine ChartPie ChartExperimental ChartsNewExperimental Radial ChartNewExperimental Radar ChartNewBar ListTracker
Async ImageAvatarCarouselPreskok Icon
Forms

Range Calendar

A calendar component for selecting date ranges.

View as MarkdownAsk ChatGPT

Installation

npx shadcn@latest add @preskok/range-calendar

Usage

import { parseDate } from "@internationalized/date"

import { RangeCalendar } from "@/components/ui/preskok-ui/range-calendar"

export function RangeCalendarDemo() {
  return (
    <RangeCalendar
      defaultValue={{
        start: parseDate("2026-04-10"),
        end: parseDate("2026-04-16"),
      }}
      aria-label="Trip dates"
    />
  )
}

Props

  • visibleDuration: DateDuration — Number of months shown at once.
  • Inherits all react-aria-components RangeCalendar props.

Features

  • Range-first interaction with contiguous date highlighting.
  • Single or multi-month layouts with built-in navigation.
  • Date constraints via minValue, maxValue, and isDateUnavailable.
  • Keyboard and screen reader support from React Aria primitives.

Examples

Basic

Controlled

Disabled

Validation

Date Range Picker

Pick a start and end date with a responsive calendar overlay.

Time Field

A time input field with segmented time entry.

On this page

Installation
Usage
Props
Features
Examples
Basic
Controlled
Disabled
Validation