useCreateCalendar
Create a controlled or uncontrolled item-agnostic controller, with optional simple-mode data.
const calendar = useCreateCalendar({
views: { month: true, week: true },
defaultDate: Temporal.PlainDate.from('2026-07-10'),
defaultView: 'month',
timeZone: 'America/Asuncion',
items: events,
getDate: event => event.date,
})With items, the return value includes the inferred activeView. Without items, it returns the item-agnostic controller used with CalendarProvider and useCalendarView.
Controlled props are date/onDateChange and view/onViewChange; uncontrolled initial props are defaultDate and defaultView.