← single target

Rozhen Night Plan

Up to ten targets, one night: each gets its good/marginal/poor windows (darkness × altitude × Moon × clouds, as on the single-target page), then the night is handed out five minutes at a time to whichever target is best — with hysteresis, so you get a few solid blocks of at least 30 minutes, not a flicker. Targets that never win a block are listed with the reason.

Try: an autumn deep-sky night  ·  ← previous night · next night →

Night of Friday, 02 October 2026 · astronomical night 20:33 → 05:47 (9.23 h) · Moon 57% (waning gibbous) · weather: ERA5 history

M31M31 19:00–19:30: unusableM31 19:30–20:35: poorM31 20:35–21:00: marginalM31 21:00–21:15: poorM31 21:15–22:10: marginalM31 22:10–22:50: goodM31 22:50–23:00: marginalM31 23:00–00:00: poorM31 00:00–01:00: marginalM31 01:00–05:50: goodM31 05:50–06:00: marginalM31 06:00–06:55: poorM31 06:55–07:20: unusableobserve M31 20:35–21:00observe M31 21:15–23:00observe M31 00:00–06:00scheduleM31M3120:0022:0000:0002:0004:0006:00

Faded bands: each target's own windows (green good, amber marginal, pink poor). Dark blue: the schedule. Grey columns: twilight.

Schedule

localtargethoursmean quality
19:00–20:35 — nothing worth pointing at — 1.58
20:35–21:00 M31 0.42 0.35
21:00–21:15 — nothing worth pointing at — 0.25
21:15–23:00 M31 1.75 0.47
23:00–00:00 — nothing worth pointing at — 1.0
00:00–06:00 M31 6.0 0.63
06:00–07:20 — nothing worth pointing at — 1.33

Targets

targetastronomyoverallbest windowhighestMoon sep.scheduled h
M31 Andromeda Galaxy 100 68 01:00–05:50 (good) 89.6° at 01:20 65.6° 8.17

💡 API
curl -sS "https://devops.majbase.com/rozhen-planner/plan-api?targets=M31,M42,M45,NGC%207000&date=2026-10-02"

targets: names or RA Dec, separated by commas, semicolons or newlines, at most ten. The response carries targets[] (score, verdict, best_window, windows, transit, moon_separation), schedule[] (blocks with target, start/end in UTC and local, hours, mean_quality; target: null is idle time), unscheduled[] with a why, forecast_source, warnings[]. Missing targets → 400 {"error", "code": "targets_missing"}.