the calendar view · v1.107.0
JavaScript Calendar View for a Data Grid
A booking or schedule view of the rows you already have. Name the start and end columns and the same data is drawn as cards on a week or a month. Drag a card to another slot and the grid's own Start and End cells change with it.
Try it live Read how to add a calendar
a view, not a second store
The calendar and the table are the same rows.
A calendar bolted on beside a grid usually means a second copy of the data, kept in step by hand. This one is bound to the grid. Drag a card in the demo above and watch the Start and End cells in the grid above it change. Try dragging a client call outside 09:00 to 17:00 and the move is refused with its reason.
what it does
A schedule you can move things around on.
Bound to the grid
Pass the live grid and the calendar reads its filtered, sorted rows. Filter the grid and the calendar narrows with it.
A drag is an edit
Move a card to another day or slot and the move is written through the grid's own edit path, so it is validated and kept in undo history. A refused write snaps the card back.
Hour axis and month grid
A week with an hour axis, a day, or a month grid. Overlapping meetings split into side-by-side columns and all-day items stack in their own row.
Veto a move with a reason
A beforeMove handler can refuse a drag and say why, for a rule such as client calls staying inside business hours.
One feed, many views
A Data Router feed can drive the calendar the same way it drives a grid or a chart, as keyed diffs.
Your framework, or htmx
Wrappers for React, Vue and Angular, and an htmx module that builds the calendar from a server-rendered table.
demos
Run it, then change it.
A week of bookings you can reschedule
The calendar bound to a grid, with a drag written back and a veto outside business hours.
The calendar with htmx
Server-rendered rows become events, and a move posts back to the server.
docs
Reference and the rest of the product.
How to show a data grid as a calendar
Bind to a grid, a Data Router feed or a headless grid.
Calendar with htmx
No setup code, re-bound after a swap.
The grid
The rows the calendar reads from.
API reference
Every option and method.
Also in the licence
- GridThe data grid with derived grids, statistics and Explain built in.
- DashboardsKPI tiles, charts and the Designer, on the same rows.
- GanttDependencies, critical path and resource load.
- KanbanA board over the rows you already have.
- SchedulerPeople and machines allocated to work.
- FormsForms, the record editor and the app shell.