Moon
How the Moon is lit through the month, when each phase arrives, and what happens when the Earth's shadow crosses it. Every demo here is Almanac running in your browser.
A month of Moon
Watch a crescent grow into a full Moon and fade again. Choose a month, tap a disc or scrub through the days to explore the Moon's phase and illumination.
Your location stays in this browser tab. We don't send it to our servers or store it.
Waning gibbous
73% illuminated
Salish Sea
Moon 68.2° above the horizon here
Phase buttons jump to the exact instant. The upright discs illustrate illumination; their tilt in your sky depends on your location. Phase is effectively the same worldwide; location changes the local time and Moon altitude.
Show the TypeScript
import { moonIllumination, searchMoonPhases } from '@openwaters/almanac';
const start = new Date('2026-09-01T00:00:00Z');
const end = new Date('2026-10-01T00:00:00Z');
const days = Array.from({ length: 30 }, (_, day) => {
const time = new Date(start.getTime() + (day + 0.5) * 86_400_000);
return { time, ...moonIllumination(time) };
});
// Each disc uses fraction (0–1) and waxing (bright side).
// These are the exact instants for the four phase buttons.
const quarters = searchMoonPhases(start, end);
console.log(days, quarters);The Moon in Earth's shadow
Explore penumbral, partial and total lunar eclipses with real examples from 2026–2027. Scrub across each event to see what changes on the Moon itself. A lunar eclipse is the Earth's shadow falling on the Moon; the Moon's shadow falling on the Earth is a solar eclipse.
Your location stays in this browser tab. We don't send it to our servers or store it.
The whole Moon enters the umbra. Sunlight filtered through Earth's atmosphere can turn it copper or red.
· Moon 31.0° above your horizon.
Shadow shape and color are illustrative, not a prediction of the Moon's exact appearance. Contact times come from Almanac. The Moon stays visible in this illustration even when below your horizon.
Total example
Total- Penumbra begins
- Partial begins
- Totality begins
- Totality ends
- Partial ends
- Penumbra ends
- Umbral magnitude
- 1.156
A lunar eclipse happens at the same instant worldwide. Location changes which stages are above your horizon and their local clock times. Visibility excludes weather and terrain.
Show the TypeScript
import { lunarEclipses, lunarEclipseVisibility } from '@openwaters/almanac';
const eclipses = lunarEclipses(
new Date('2026-01-01T00:00:00Z'),
new Date('2028-01-01T00:00:00Z'),
);
const observer = { latitudeDeg: 48.5, longitudeDeg: -123 };
for (const eclipse of eclipses) {
console.log(eclipse.kind, eclipse.peak,
lunarEclipseVisibility(eclipse, observer));
}