render_calendar_page
Draw one month of a calendar as an SVG grid, or a whole year on one sheet, and return the SVG itself. Columns come from the calendar's own week, so a ten-day week gets ten columns. Intercalary days belong to no month and never take a cell in the grid: the blocks either side of this month are drawn as a strip outside it, dashed when the week does not count them. Moons get a glyph per day, lit to that moon's phase, when the calendar defines any. Events use the same shape as render_timeline and are filtered to the days on this page, with at most 500 given and at most three shown per day before the rest become a count. Colours are assigned per color_key from the whole list before filtering, so a category keeps its colour across months. OMIT 'month' TO DRAW THE WHOLE YEAR on one sheet, every month side by side — for seeing at once whether festivals are evenly spread, which nine separate month pages do not show. A year sheet has no room for labels or moon glyphs, so each day carries its number and a dot per event, every dot holding its label in a . Fully deterministic: the same arguments always produce byte-identical SVG. The output is static SVG and never contains script or style.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | ||
| month | No | ||
| theme | No | default | |
| events | No | ||
| calendar | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |