QCalendar
v5.3.1

This example uses 30-minute intervals for a less dense schedule grid.