How Western astrology is calculated
What we compute, how we compute it, and where we stop.
Western astrology maps the sky at the minute you were born. The zodiac it uses is tropical, which means it starts at the spring equinox and cuts the circle into twelve arcs of 30°. So a sign is a stretch of sky measured from the seasons — not a picture of stars, and not quite the constellation of the same name. Three points do most of the work: the Sun is the part of you that stays the same, the Moon is your inner weather, and the rising sign is the arc of zodiac climbing over the eastern horizon at your birth minute — the face you meet the world in. People call those three the Big Three.
Sun-sign dates are a table, and we say out loud what a table costs. The Sun crosses each 30° line at an instant that drifts by about a day against the calendar year, so any fixed date list is roughly a day off at the edges. Most sites resolve that by picking one side and saying nothing. Bokki instead checks the day before and the day after yours: if either falls in a different sign, your birthday is inside that fuzzy band, and the page tells you so and names the neighbour — a Taurus–Gemini reading rather than a confident Taurus. The doubt is real, so we show the doubt.
Neither of these comes from a table. For the Moon we ask an ephemeris — astronomy-engine, MIT-licensed and derived from JPL data — for the Moon's geocentric ecliptic longitude at your birth instant, and the sign is that longitude divided by thirty. The Moon travels about 13° a day, so without your birth hour the answer would be a guess, and we ask rather than guess. The ascendant needs the place too: we take apparent sidereal time from the same ephemeris, add your east longitude for local sidereal time, take the true obliquity of date, and solve the classical ascendant formula with your latitude. The tests check that result two independent ways — the point we compute is pushed back through the ephemeris's own rotation matrices and has to land on the eastern horizon at altitude zero, which is the definition of an ascendant, and it also has to match a published chart. The ascendant turns roughly 1° every four minutes, which is exactly why we ask for the city.
A return is the moment a planet comes back to the longitude it held when you were born. Bokki finds it by binary search on the sign change of that difference, and the tests hold the agreement to about a hundredth of a degree, with the period landing near 29.5 years for Saturn and 11.86 for Jupiter. One honest wrinkle: while a planet is retrograde it can cross the same degree up to three times, so a return is not always a single date. Bokki reports the first exact pass, which is the usual practice, and the code says so instead of hiding it.
Bokki's Vedic page runs on the same ephemeris with the Lahiri ayanāṃśa subtracted. Same sky, different zero point: tropical counts from the equinox, sidereal from the fixed stars, and the gap between them is currently around 24° — usually a whole sign. That is why your Western Sun sign and your Vedic rāśi often disagree, and why neither is a correction of the other. We keep the two engines apart in the code for the same reason.
Houses and aspects. A full natal chart divides the sky into twelve houses — Placidus, whole sign, equal, and practitioners genuinely disagree about which — and measures the angles between planets. We compute neither, so we never draw a wheel and call it a chart. Daylight saving: each birthplace carries its standard offset only, so a summer-time birth can be an hour out, and the page tells you to try an hour earlier rather than being quietly wrong. Cities we do not have: the list is forty places with latitude, east longitude and standard offset, and if yours is not on it you get no ascendant at all instead of an invented one. And nothing here is a verdict — no ranking of you, no score attached to another person, and nothing about your health.