← single night · whole-night plan
Which nights are best for a target over the coming weeks. The astronomy mark (darkness × altitude × Moon) is computed for every night; the weather and the overall mark exist only where Open-Meteo has a forecast (the next four days) or ERA5 history (past nights) — the rest is honestly blank.
| night of | astronomy | weather | overall | best window | highest | dark h | Moon | Moon sep. |
|---|---|---|---|---|---|---|---|---|
| 2028-08-24 Thu | 3 | — | unknown | 05:30–05:40 (marginal, 0.17 h) | 42.9° 08:40 | 7.19 | 27% | 122.8° |
| 2028-08-25 Fri | 4 | — | unknown | 05:25–05:40 (marginal, 0.25 h) | 42.9° 08:40 | 7.25 | 38% | 133.3° |
| 2028-08-26 Sat | 4 | — | unknown | 04:50–05:05 (marginal, 0.25 h) | 42.9° 08:35 | 7.3 | 49% | 141.9° |
| 2028-08-27 Sun | 5 | — | unknown | 04:45–05:05 (marginal, 0.33 h) | 42.9° 08:30 | 7.36 | 59% | 147.5° |
| 2028-08-28 Mon | 7 | — | unknown | 05:10–05:45 (marginal, 0.58 h) | 42.9° 08:25 | 7.42 | 69% | 148.8° |
| 2028-08-29 Tue | 9 | — | unknown | 04:35–05:45 (marginal, 1.17 h) | 42.9° 08:20 | 7.47 | 78% | 145.6° |
| 2028-08-30 Wed | 9 | — | unknown | 05:05–05:10 (good, 0.08 h) | 42.9° 08:20 | 7.53 | 86% | 139.2° |
| 2028-08-31 Thu | 10 | — | unknown | 05:00–05:10 (good, 0.17 h) | 42.9° 08:15 | 7.58 | 92% | 131.0° |
| 2028-09-01 Fri | 13 | — | unknown | 05:05–05:15 (good, 0.17 h) | 42.9° 08:10 | 7.64 | 96% | 121.8° |
| 2028-09-02 Sat | 11 | — | unknown | 05:05–05:15 (good, 0.17 h) | 42.9° 08:05 | 7.7 | 99% | 112.1° |
| 2028-09-03 Sun | 11 | — | unknown | 05:10–05:15 (good, 0.08 h) | 42.9° 08:00 | 7.75 | 100% | 102.1° |
| 2028-09-04 Mon | 9 | — | unknown | 04:15–05:15 (marginal, 1.0 h) | 42.9° 08:00 | 7.81 | 99% | 92.0° |
| 2028-09-05 Tue | 9 | — | unknown | 04:20–05:20 (marginal, 1.0 h) | 42.9° 07:55 | 7.86 | 96% | 81.9° |
| 2028-09-06 Wed | 8 | — | unknown | 04:25–05:20 (marginal, 0.92 h) | 42.9° 07:50 | 7.92 | 92% | 71.9° |
| 2028-09-07 Thu | 7 | — | unknown | 04:25–05:20 (marginal, 0.92 h) | 42.9° 07:45 | 7.97 | 86% | 62.0° |
| 2028-09-08 Fri | 6 | — | unknown | 04:25–05:20 (marginal, 0.92 h) | 42.9° 07:45 | 8.03 | 79% | 52.5° |
| 2028-09-09 Sat | 7 | — | unknown | 04:20–05:25 (marginal, 1.08 h) | 42.9° 07:40 | 8.08 | 71% | 43.7° |
| 2028-09-10 Sun | 9 | — | unknown | 04:10–05:25 (marginal, 1.25 h) | 42.9° 07:35 | 8.13 | 61% | 36.3° |
| 2028-09-11 Mon | 12 | — | unknown | 03:55–05:25 (marginal, 1.5 h) | 42.9° 07:30 | 8.19 | 51% | 31.8° |
| 2028-09-12 Tue | 16 | — | unknown | 03:40–05:25 (marginal, 1.75 h) | 42.9° 07:25 | 8.24 | 41% | 31.5° |
| 2028-09-13 Wed | 22 | — | unknown | 04:30–05:30 (good, 1.0 h) | 42.9° 07:25 | 8.29 | 30% | 36.1° |
| 2028-09-14 Thu | 28 | — | unknown | 04:15–05:30 (good, 1.25 h) | 42.9° 07:20 | 8.35 | 20% | 44.4° |
| 2028-09-15 Fri | 33 | — | unknown | 04:05–05:30 (good, 1.42 h) | 42.9° 07:15 | 8.4 | 12% | 55.0° |
| 2028-09-16 Sat | 38 | — | unknown | 03:55–05:30 (good, 1.58 h) | 42.9° 07:10 | 8.45 | 5% | 67.0° |
| 2028-09-17 Sun | 41 | — | unknown | 03:55–05:35 (good, 1.67 h) | 42.9° 07:05 | 8.5 | 1% | 79.8° |
| 2028-09-18 Mon | 42 | — | unknown | 03:50–05:35 (good, 1.75 h) | 42.9° 07:05 | 8.56 | 0% | 92.8° |
| 2028-09-19 Tue | 43 | — | unknown | 03:45–05:35 (good, 1.83 h) | 42.9° 07:00 | 8.61 | 2% | 105.8° |
| 2028-09-20 Wed | 45 | — | unknown | 03:40–05:35 (good, 1.92 h) | 42.9° 06:55 | 8.66 | 7% | 118.3° |
| 2028-09-21 Thu | 48 | — | unknown | 03:35–05:40 (good, 2.08 h) | 42.9° 06:50 | 8.71 | 14% | 129.7° |
| 2028-09-22 Fri | 48 | — | unknown | 03:35–05:40 (good, 2.08 h) | 42.9° 06:50 | 8.76 | 23% | 139.5° |
curl -sS "https://devops.majbase.com/rozhen-planner/calendar-api?target=M31&date=2028-08-24&days=30"
curl -sS "https://devops.majbase.com/rozhen-planner/calendar-api?target=M31&days=30&format=csv" -o m31-calendar.csv
One row per night: score_astronomy always, score_weather / score only where a forecast or history exists (null otherwise, with weather_source saying which), best window, dark hours, Moon illumination and separation, transit. 7–60 nights. Errors: 400 with invalid_date or target_unresolved. Results are cached for six hours; calculation version 2026-10-10.1.