Calendar #

Use this component in two styles:

  • month for visual monthly planning
  • agenda for date-first appointment lists

Best for #

  • Product/release schedules
  • Team appointment tracking
  • Content calendars and editorial planning

Event format #

Each event expects:

  • date in ISO format like YYYY-MM-DD
  • title short event title
  • details optional extra info (time, owner, context)

In this docs setup, passing events as a JSON string is recommended for MDX compatibility.

Props #

PropTypeRequiredDescription
titlestringNoHeader text for the calendar card.
mode'month' | 'agenda'NoCalendar mode. Defaults to month.
yearnumber | stringNoYear for month mode.
monthnumber | stringNoMonth for month mode (1-12).
monthNavigationboolean | stringNoEnables Prev/Next month switching in month view. Defaults to true.
startMonthSource'today' | 'first-event' | 'custom'NoInitial month source for month view. Defaults to today.
events{ date: string, title: string, details?: string }[] | stringNoEvent items for month and agenda views.
classNamestringNoWrapper classes.

Month start behavior #

  • startMonthSource="today" starts on the current month.
  • startMonthSource="first-event" starts on the month of the earliest event.
  • startMonthSource="custom" uses year + month.

Month example #

Q2 Delivery

April 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat

1

2

3

Beta drop

4

5

6

7

8

9

10

11

Docs freeze

12

13

14

15

16

17

18

19

20

21

22

23

Public launch

24

25

26

27

28

29

30

First-event start example #

Roadmap timeline

July 2026

Sun
Mon
Tue
Wed
Thu
Fri
Sat

1

2

3

4

5

6

7

8

9

10

Kickoff

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Agenda example #

Team agenda

Apr 3, 2026

Beta review

10:00 • Product + Docs

Apr 8, 2026

Stakeholder sync

14:30 • Roadmap updates

Apr 23, 2026

Launch day

All-hands

Compact agenda example #

Support rota

May 1, 2026

On-call: Alex

Primary

May 2, 2026

On-call: Sam

Primary

Code #

mdx
<Calendar
title="Q2 Delivery"
mode="month"
year="2026"
month="4"
monthNavigation="true"
startMonthSource="custom"
events='[{"date":"2026-04-03","title":"Beta drop"},{"date":"2026-04-11","title":"Docs freeze"},{"date":"2026-04-23","title":"Public launch","details":"v2.0 release"}]'
/>
<Calendar
title="Roadmap timeline"
mode="month"
startMonthSource="first-event"
events='[{"date":"2026-07-10","title":"Kickoff"},{"date":"2026-08-02","title":"Milestone 1"},{"date":"2026-09-18","title":"Release candidate"}]'
/>
<Calendar
title="Team agenda"
mode="agenda"
events='[{"date":"2026-04-03","title":"Beta review","details":"10:00 • Product + Docs"},{"date":"2026-04-08","title":"Stakeholder sync","details":"14:30 • Roadmap updates"},{"date":"2026-04-23","title":"Launch day","details":"All-hands"}]'
/>
<Calendar
title="Support rota"
mode="agenda"
events='[{"date":"2026-05-01","title":"On-call: Alex","details":"Primary"},{"date":"2026-05-02","title":"On-call: Sam","details":"Primary"}]'
/>