Day is an agenda, Week is seven wide columns, Month is the planning default with cells big enough to hold a real day's work, and 3 Mo is a compressed lookahead. Each day cell shows an open-task count and either title pills or, at the compressed zoom, thin colour bars in the area's hue. You can grab anywhere and pull the months up or down.
Also called: task calendar view · calendar of my work · month view tasks · schedule my to-dos
- 1Months render from three back to twelve ahead; weeks from two back to twenty-six ahead; days from a week back to sixty ahead.
- 2Changing zoom re-anchors on today using getBoundingClientRect maths against the scroll container.
- 3On narrow screens a week row pans sideways, and a tag pinned to the edge shows how many OPEN tasks are out of view; tapping it pans to the nearest hidden task.
- 4Day cells and week rows are module-level memoised components.
Two failures are recorded in the code. Cell heights are inline styles because 'the first version used a Tailwind arbitrary min-h class that silently failed to apply in production, and every month collapsed into a ~25px-row heap — six months in a viewport, unusable, and worse: it looked like a design choice.' The memoisation exists because an earlier version defined the day cell inside the calendar, making it a new component type every render: 'React tears down and remounts every cell (hundreds of them) on any state change, and the whole calendar felt like wading through mud.' The edge tags exist because 'someone scrolling past sees three empty days and reasonably assumes the whole week is clear.'
- A list cannot show load across days
- Panned week rows silently hid work off-screen
See it on your own jobs
Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.
or keep browsing features →