Calendar
Five views, drag-and-resize, and typed event payloads
A scheduling calendar with day, week, month, year and agenda views over one event model. Events carry a consumer-defined payload type through to the rendering templates, so an application keeps its own domain types instead of mapping them into the library’s — and the whole surface themes through CSS custom properties.
76 published stories in Storybook
Week view
Drag an event to move it; drag its edge to resize. The layout re-flows around it.
Views
WeekSeven days at hour resolution, with drag to move an event and edge-drag to resize it.
DayA single day at hour resolution, with concurrent events laid out side by side.
MonthA month grid with per-day event stacking and an overflow affordance.
YearTwelve months at once, for density rather than detail.
Month agendaThe month’s events as an ordered list instead of a grid.
Capabilities
Typed payloadEvents carry a consumer-defined payload type all the way through to the templates that render them. Event overlayThe layout pass that positions concurrent events so they read without colliding. FilterNarrowing the visible set without re-fetching or rebuilding the view. ShellThe bare calendar with its chrome removed, for dropping into an existing layout. AccessibilityKeyboard navigation and screen-reader semantics, exercised across every view. ThemingThe token surface, and what moves when a consumer overrides part of it. Consumer themesThe same calendar rendered under each published persona theme. OverviewEvery view and capability on one screen.
Pickers
Shipped from the same library so a date field and the calendar behind it cannot drift apart.