ReactDatePicker

API Reference

Complete API documentation for all components, props, and types.

DatePicker

A modern, customizable date picker component with support for time selection, multiple formats, and 11 languages.

PropTypeDefaultDescription
valueDate | null-Selected date value
onChange(date: Date | null) => void-Callback when date changes
placeholderstring"Select date..."Input placeholder text
minDateDateundefinedMinimum selectable date
maxDateDateundefinedMaximum selectable date
disabledbooleanfalseDisable the picker
showTimebooleanfalseShow time selection
formatstring"DD/MM/YYYY"Date format (DD/MM/YYYY, MM/DD/YYYY, YYYY-MM-DD, etc.)
languageLanguage"en"Language (en, tr, de, fr, es, it, pt, ru, ja, zh, ar)
showQuickSelectbooleanfalseShow quick date selection options
showWeekNumbersbooleanfalseShow ISO week numbers
usePortalbooleanfalseUse React Portal for calendar rendering
classNamestring""Additional CSS classes
customDaysCustomDay[][]Custom day configurations (labels, colors, disabled)
initialMonthDatenew Date()Initial month to display

Example

import DatePicker from 'react-datepicker-bkrdmrcioglu';
import { useState } from 'react';

function Example() {
  const [date, setDate] = useState<Date | null>(null);

  return (
    <DatePicker
      value={date}
      onChange={setDate}
      showTime={true}
      language="en"
      format="DD/MM/YYYY"
    />
  );
}

DateRangePicker

A date range picker component with two-month view and quick range selection options.

PropTypeDefaultDescription
startDateDate | null-Start date value
endDateDate | null-End date value
onChange(start: Date | null, end: Date | null) => void-Callback when dates change
minDateDateundefinedMinimum selectable date
maxDateDateundefinedMaximum selectable date
disabledbooleanfalseDisable the picker
languageLanguage"en"Language selection
showQuickSelectbooleanfalseShow quick range selection options

Example

import DateRangePicker from 'react-datepicker-bkrdmrcioglu';
import { useState } from 'react';

function Example() {
  const [startDate, setStartDate] = useState<Date | null>(null);
  const [endDate, setEndDate] = useState<Date | null>(null);

  return (
    <DateRangePicker
      startDate={startDate}
      endDate={endDate}
      onChange={(start, end) => {
        setStartDate(start);
        setEndDate(end);
      }}
      showQuickSelect={true}
      language="en"
    />
  );
}

Types & Interfaces

Language

type Language = 'en' | 'tr' | 'de' | 'fr' | 'es' | 'it' | 'pt' | 'ru' | 'ja' | 'zh' | 'ar';

CustomDay

interface CustomDay {
  date: Date;
  label?: string;
  className?: string;
  color?: string;
  disabled?: boolean;
}