An observatory that needs no network
Sun, Moon, planets, eclipses, occultations, satellite passes, meteor showers and the whole astrological apparatus — every bit of it computed on your own machine from published theory, with no API key and nothing that can be shut down.
Not in the HomeSeer store yet — running here daily, and heading for the store as a beta.
Almost every "sun and moon" integration is a weather API wearing a hat. It fetches sunrise from somebody's service — which means an account, a key, a rate limit, an outage, and eventually a pricing email about your sunrise.
None of that is necessary, because none of it is weather. Where the Sun and Moon are, for a given latitude and instant, is a solved problem with published solutions and no network in it anywhere. So this computes it. All of it. On your machine, offline, for as long as the machine runs.
Then it kept going.
The foundation
The Sun's position comes from VSOP87D, the Bureau des Longitudes' own planetary theory — 487 coefficients, machine-generated into source rather than typed. Transcribing them by hand would be 487 opportunities to fat-finger a digit in a way no test could localise: the answer would simply be slightly wrong, forever, and look exactly like model error rather than a typo.
On top of that sit nutation — the Earth's axis nodding through an 18.6-year cycle, 106 terms from the IAU 1980 theory, likewise parsed rather than typed — precession, and the topocentric corrections that separate where a body is from where it appears from one particular roof. That distinction turns out to matter enormously later.
What it will tell you
Rise, set and the three twilights. Moon phase, illumination, and the traditional full-moon names — where the Harvest Moon is the full moon nearest the September equinox, not September's full moon, which is the kind of detail a twelve-row lookup table gets wrong on a schedule anyone can check.
Planetary positions and the dated events worth caring about: conjunctions, oppositions, and the greatest elongations that are the only times Mercury is worth chasing. All three are the same problem — an angle passing through an extremum — so all three use one solver, and adding a body means adding it to a list rather than writing new arithmetic.
Eclipses, both kinds. The usual route to local solar circumstances is Besselian elements, which are awkward enough that most software either quotes global circumstances or ships a table of them. This does neither, because it turns out that once you already know precisely where the Sun and Moon are as seen from here, a solar eclipse is just are those two discs overlapping.
Occultations — the Moon passing in front of a planet or a bright star — came almost free once the topocentric machinery existed, since an occultation is a solar eclipse with a different pair of bodies. It is also the most local thing in here: a total lunar eclipse is the same event for half the planet, but an occultation of Aldebaran is a hit from Phoenix and a clean miss from Denver, because parallax moves the Moon a whole degree between them. Only four first-magnitude stars can ever be occulted at all, and that is a fact about the sky rather than about this catalogue.
Satellite passes, via SGP4 — the one algorithm here that cannot be derived from first principles. A TLE is not a set of physical orbital elements; it is a set of numbers fitted to that exact propagator. Feed one to a textbook two-body model and you get a perfectly plausible orbit that is simply wrong.
And it reports whether you will actually see the pass, which needs three things at once, of which "is it overhead" is only the first. A satellite is not a light. It is a mirror — so it must also be sunlit while you are in darkness.
Meteor showers from the International Meteor Organization's working list. These are the one part that is a reference table rather than a derivation, because a shower's rate is measured by people standing in fields and varies year to year. The page says so, since the accuracy claim is different in kind from everything around it.
The part that turns it into advice
Everywhere else the plugin answers where is it. One module answers should I bother, which is a better question. A shower peaking at noon is worthless. A shower peaking at 2am under a full Moon is nearly worthless. The same shower on a moonless night with the radiant high is worth setting an alarm for — and that is a computation, not a judgement call.
The astrology, and how it is handled
There is a full astrological surface: zodiacal positions, retrogrades, the void-of-course Moon, planetary hours, the lunar mansions.
It required no new mathematics whatsoever, and that is the point. A zodiac sign is an ecliptic longitude divided into twelve. A retrograde is a body whose apparent longitude is decreasing. A void-of-course Moon is one that will make no further major aspect before it changes sign. Every one of those is a statement about geometry the plugin already computes — and every one is either true or false regardless of what anyone believes it means.
So the plugin computes them exactly and makes no claims at all. Where a tradition has two competing conventions, it says so rather than silently picking one. The traditions get the same real sunrise and the same real lunar longitude as everything else, because the geometry is precisely the part that usually gets fudged by software treating this as decoration.
One networked module, off by default
Exactly one module touches the network, and it ships switched off. With it off, the plugin makes no outbound connection at all.
It exists because two things genuinely cannot be computed, on the grounds that they are not astronomy:
Satellite elements. Where the Space Station is depends on the atmosphere it flew through last week and on when it last fired its thrusters. There is no closed form — somebody has to go and measure it. Those come from Celestrak.
Cloud. The single most important fact about tonight's observing, and the one thing the sky will not tell you in advance. That comes from Open-Meteo, and it feeds straight into the "should I bother" logic: a perfect conjunction under solid overcast is not an event, it is a rumour.
When enabled it fetches rarely, caches, times out quickly and fails quietly. A missing forecast degrades the advice; it never breaks the page.
Everything else is pure computation from the observer's coordinates and the clock — nothing to rot, no service to shut down, no key to expire. It will give the same answers in twenty years, which is not something I can say about much else I have built.
What it should fetch next
Space weather. Solar flux, the Kp index, flare activity and the aurora forecast, from NOAA's Space Weather Prediction Center — which publishes it openly and without an API key, in keeping with the rest of this.
It fits the existing shape exactly. The observing module already answers is this worth going outside for by combining darkness, Moon interference and cloud; an aurora is the same question with one more input. And unlike everything else here, a geomagnetic storm gives roughly a day of warning, which is precisely the sort of thing a house ought to be able to tell you about at dinner rather than the following morning on the internet.
Not built yet. Noted here so it does not get forgotten.