# dbushell/pikaday

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/dbushell-pikaday).**

8,094 stars · 1,282 forks · JavaScript · NOASSERTION · archived

## Links

- GitHub: https://github.com/dbushell/Pikaday
- awesome-repositories: https://awesome-repositories.com/repository/dbushell-pikaday.md

## Description

Pikaday is a lightweight JavaScript datepicker widget and dependency-free UI component. It provides a graphical calendar interface for selecting dates that binds to form fields without requiring external libraries or frameworks.

The project features a localizable calendar interface, allowing for the customization of month names, weekday labels, and regional text directions to support multiple languages. Its programmable API manages input formatting and selection restrictions.

The tool covers a broad range of date selection capabilities, including date input validation, range restrictions, and custom date formatting. It also provides a system for event handling and programmatic visibility management to control when the calendar appears or disappears on the screen.

## Tags

### User Interface & Experience

- [Date Pickers](https://awesome-repositories.com/f/user-interface-experience/date-pickers.md) — Provides a lightweight graphical calendar interface for selecting dates and binding them to form fields. ([source](https://github.com/dbushell/pikaday#readme))
- [Date Selection Components](https://awesome-repositories.com/f/user-interface-experience/date-selection-components.md) — Provides a lightweight calendar widget for selecting dates within web application forms.
- [Interactive Rendering](https://awesome-repositories.com/f/user-interface-experience/calendars/interactive-rendering.md) — Renders an interactive calendar grid that binds directly to form fields using plain JavaScript. ([source](https://github.com/dbushell/pikaday#readme))
- [Selection Restrictions](https://awesome-repositories.com/f/user-interface-experience/date-pickers/selection-restrictions.md) — Implements date selection restrictions including disabled weekends, range limits, and custom validation logic. ([source](https://github.com/dbushell/pikaday#readme))
- [Datepicker Widgets](https://awesome-repositories.com/f/user-interface-experience/datepicker-widgets.md) — Ships a lightweight calendar interface for selecting dates that binds directly to form fields.
- [Date Input Validation](https://awesome-repositories.com/f/user-interface-experience/form-and-input-management/form-validation/date-input-validation.md) — Provides rules for restricting date selection using boundaries and custom predicate functions.
- [Calendars](https://awesome-repositories.com/f/user-interface-experience/calendars.md) — Features a date selection tool with customizable labels to support multiple languages and regions.
- [Event Callbacks](https://awesome-repositories.com/f/user-interface-experience/date-pickers/event-callbacks.md) — Provides a callback system to execute custom functions when the calendar opens, closes, or updates selection. ([source](https://github.com/dbushell/pikaday#readme))
- [Visibility Management](https://awesome-repositories.com/f/user-interface-experience/date-pickers/visibility-management.md) — Offers a programmatic API to explicitly show, hide, and manage the position of the calendar overlay. ([source](https://github.com/dbushell/pikaday#readme))
- [Overlay Visibility Controls](https://awesome-repositories.com/f/user-interface-experience/preview-controls/preview-visibility-controllers/overlay-visibility-controls.md) — Provides explicit show and hide methods to programmatically manage the display and positioning of the calendar overlay.

### Development Tools & Productivity

- [Date String Parsers](https://awesome-repositories.com/f/development-tools-productivity/date-and-time-utilities/relative-date-formatting/date-string-parsers.md) — Converts date strings into native JavaScript date objects for processing. ([source](https://github.com/dbushell/pikaday#readme))
- [Date Formatting Utilities](https://awesome-repositories.com/f/development-tools-productivity/date-formatting-utilities.md) — Transforms date objects into specific human-readable string formats. ([source](https://github.com/dbushell/pikaday#readme))

### Web Development

- [Dependency-Free Frontend Libraries](https://awesome-repositories.com/f/web-development/dependency-free-frontend-libraries.md) — Functions as a modular JavaScript element without requiring external libraries or frameworks.
- [Calendar Localizations](https://awesome-repositories.com/f/web-development/calendar-localizations.md) — Supports customization of month names, weekday labels, and text direction for different regional formats. ([source](https://github.com/dbushell/pikaday#readme))
- [Calendar DOM Rendering](https://awesome-repositories.com/f/web-development/direct-dom-manipulation/calendar-dom-rendering.md) — Generates the calendar grid and navigation controls through direct manipulation of the browser document object model.

### Part of an Awesome List

- [UI Layout Customization](https://awesome-repositories.com/f/awesome-lists/devtools/calendars-and-pickers/ui-layout-customization.md) — Allows customization of visible months, languages, and regional text directions to tailor the calendar interface.
- [Form Components](https://awesome-repositories.com/f/awesome-lists/devtools/form-components.md) — Lightweight, modular datepicker with no dependencies.

### Software Engineering & Architecture

- [UI Configuration Objects](https://awesome-repositories.com/f/software-engineering-architecture/configuration-state-managers/ui-configuration-objects.md) — Implements a central options object during initialization to determine the picker's behavior and visual layout.
- [Event-Driven Callbacks](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-callbacks.md) — Triggers custom user functions in response to internal state changes like date selection or month navigation.
