
The moons property inside a Calendar Configuration defines celestial bodies orbiting your world. You can configure multiple moons per calendar, each with its own cycle length, phase alignment offset, custom colors, and phase count resolution.
Moons get rendered dynamically across various phases based on their synodic cycle.
These appear on top of their respective calendar’s axis. The more you zoom out, the more moons disappear in favor of performance and clarity.
Configuration
The moons property contains a list of moons. Each moon configuration supports the following properties:
| Property | Type | Default | Description |
|---|---|---|---|
offset | number (required) | n/a | Day where a new moon gets drawn relative to Day 0. |
cycle | number (required) | n/a | Total duration of one full synodic cycle in days. |
color | string (optional) | currentColor | Foreground color (lit portion) as a hex or color name. |
colorBg | string (optional) | black | Background color (unlit portion) of the moon icon. |
phases | number (optional) | 4 | Resolution / total step count of phases in the cycle. |
The cycle determines the period of the orbit, while offset positions the baseline new moon alignment on your timeline.
Example
Below is the moon section of a Calendar Configuration example featuring custom offsets, cycle lengths, colors, and phase configurations:
![tip] Moons get drawn in order
The first one gets drawn behind all others, it is basically the furthest from your planet.
The last one is the closest to your planet.
moons:
# Legendary Blood Moon with custom phase resolution
- cycle: 3000
offset: 2123
color: crimson
phases: 16
# Primary Silver Moon (default notation)
- cycle: 28.3
offset: 10
color: '#ffd700'
# Secondary Fast Moon with minimal configuration (no color, short notation)
- {cycle: 12.72, offset: 2.5}