On this page
Overview
flatpickr is a dependency-free JavaScript/TypeScript date and time picker. It supports single dates, ranges, multiple dates, and time-only input, with configurable formats, disabled dates, week numbers, locales, themes, and plugins.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Switch between single, range, multiple, and time modes
The mode option supports single, multiple, range, and time, while enableTime adds time selection alongside a calendar.
Control selectable dates and display formats through options
Applications can disable specific dates, ranges, or dates selected by custom logic and can configure how selected dates are formatted for display.
Sources: [1]
Combine locales, themes, plugins, and フレームワーク用ラッパーs
The README lists 51 locales, multiple themes, numerous plugins, and wrapper projects for React, Angular, Vue, Svelte, and other frameworks.
Sources: [1]
Best fit
Fits booking, filtering, and administration interfaces that need richer date selection than native inputs
It is useful for date-range searches, reservation times, multi-day selections, and disabled-date rules under one picker interface.
Sources: [1]
Before adoption
Business date rules and timezone handling remain application responsibilities
The picker handles input and selection UI, while business-day logic, timezone conversion, and server storage formats should be designed explicitly by the application.
Sources: [1]
Framework wrappers are separate projects and need compatibility checks
React, Vue, Angular, and other wrappers linked from the README are separate projects, so their compatibility and maintenance status should be checked against flatpickr 4.6.13 and the selected framework version.
Sources: [1]
Official sources
- [1]flatpickr v4.6.13 README(2026-10-05)
- [2]flatpickr v4.6.13 options(2026-10-05)
- [3]flatpickr v4.6.13 package metadata(2026-10-05)
- [4]flatpickr v4.6.13 release(2026-10-05)
- [5]flatpickr MIT license(2026-10-05)
Supplemental curator note
flatpickr is practical when native date inputs do not cover ranges, multiple dates, time selection, or complex disabled-date rules. Since 4.6.13 remains the current stable release, new integrations should verify target-browser and framework-wrapper compatibility in their actual environment.
Try it in 3 steps
- 1
Install flatpickr 4.6.13
Pin the reviewed stable release.
npm install --save-exact flatpickr@4.6.13 - 2
Import flatpickr and the default CSS
Load the JavaScript API and default styling.
import flatpickr from 'flatpickr'; import 'flatpickr/dist/flatpickr.min.css'; - 3
Create a range picker with time selection
Combine
mode: 'range'withenableTimeso one input can select a date range and times.flatpickr('#schedule', { mode: 'range', enableTime: true, dateFormat: 'Y-m-d H:i' });
Growth
Growth trends · Last 30 days
16,464 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 0
- Open PRs
- 134
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- datetime
- datetime-picker
- datepicker
- timepicker
- daterange
- date
- daterangepicker
- Stars
- 16,464
- Forks
- 1,452
- Watchers
- 196
- Open issues
- 726
- Contributors
- 221
- Owner type
- Organization
- Primary language
- TypeScript
- License
- MIT
- Repository last updated
- Aug 2, 2024
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Uppy31,010 Stars
5 shared tag(s) · Same language
compose file-selection UI and resumable uploads from plugins across local and remote sources
TypeScript - Cropper.js13,902 Stars
5 shared tag(s) · Same language
move and resize image selections in the browser and export the cropped result as a Canvas
TypeScript - Bootstrap174,991 Stars
4 shared tag(s) · 1 shared category(s)
Build responsive interfaces from a CSS/Sass grid, utilities, components, and native JavaScript
MDX - Alpine.js31,960 Stars
4 shared tag(s) · 1 shared category(s)
add state, events, and display behavior directly to HTML for small interactive interfaces
HTML - SortableJS31,186 Stars
4 shared tag(s) · 1 shared category(s)
reorder list items with drag and drop within or across lists while supporting touch input
JavaScript - SweetAlert218,098 Stars
4 shared tag(s) · 1 shared category(s)
replace alert, confirm, and prompt dialogs with WAI-ARIA-aware popups that resolve through Promises
JavaScript
Report incorrect information
Tell us if any listing information is incorrect or outdated.