ns-ui

Date Picker Moon

Masked date input whose popover calendar doubles as a moon-phase almanac: every day cell carries a canvas moon with a real synodic terminator, the field icon tracks the focused date's phase live, and committing runs an eclipse transit across the chosen numeral.

Use when a single calendar date where the lunar phase of the choice is genuinely relevant or worth the ceremony (launch dates, observation windows, editorial calendars), with a masked MM/DD/YYYY field for typists and a 42-cell grid for pointers; pick date-range-tape instead when a span and its duration are what is being decided rather than one day, or time-picker-sundial when the value is a time of day rather than a date.

Install

npx shadcn add https://design.helpmarq.com/r/date-picker-moon.json
  • date-picker
  • input
  • calendar
  • canvas
  • form
  • moon
  • keyboard
  • micro-interaction

ns-ui / date-picker-moon

New journal entry

The date picker doubles as a moon-phase almanac — every day cell carries its computed terminator, and committing a date runs a tiny eclipse across the numeral.

Last quarter · 65% illuminated

Dated Aug 4, 2026

Open the calendar (or press Arrow Down in the field), arrow through the month and watch the trailing moon track your focus. Enter commits with an eclipse transit across the chosen day.

Props

PropTypeDefaultDescription
value?Date | nullcontrolled selected date; omit for uncontrolled
defaultValue?Date | nullnull
onValueChange?(date: Date) => void
label?string"Date"
disabled?booleanfalse
className?string