kriya-ephemeris-stars
v0.1.2
Published
Browser-shippable fixed-star catalog, precession, and paran (Brady) computation. Companion to kriya-ephemeris -- separate package so pros who don't use the Stars tab don't pay its bundle-size cost.
Readme
kriya-ephemeris-stars
Browser-shippable fixed-star catalog, precession, and paran (Bernadette
Brady framework) computation, factored out of the Kriya astrology API
engine. A separate package from kriya-ephemeris (its peer dependency)
so pros who don't use the Stars tab don't pay its bundle-size cost.
Status
v0.1.0 — full offline closure for the fixed-star feature.
Surface
Single entry point (kriya-ephemeris-stars), re-exporting:
- Catalog —
FIXED_STARS(159 stars: 4 Royal Stars, 3 galactic anchors, plus other named bright stars),STAR_COUNT(the single source of truth for the catalog size — don't hardcode the count anywhere else; a stale "200+" figure and a couple of stale "158"/ "160" figures were found drifting across this repo's docs during this extraction, precisely because it was hardcoded in multiple places instead of computed once). - Precession + positions —
fixedStarPosition,allFixedStarPositions. Uses a linear IAU general-precession-rate approximation (~50.29"/tropical year, longitude only — latitude drift is negligible over historical timescales for astrological purposes). Not a full IAU 2006/Vondrák rotation-matrix precession; no per-star proper motion. Matches the engine's original implementation exactly (byte-identical output, see Parity below). - Conjunctions —
fixedStarConjunctions(points, jdTT, orbDeg?). - Parans —
lstForAngle,findParans,findPairParans(the Brady paran framework: latitudes where a star and a chart point are simultaneously on an angle).
Out of scope (server-only via the API)
- Chart-assembly glue (
computeFixedStarsForChart,computeChartParansin the engine'slib/api/compute-phase8b.ts) — stays engine-side, same boundary askriya-ephemeris's own chart-compute glue.
Sourcing
Catalog positions cross-referenced against the Yale Bright Star Catalogue and ESA's Hipparcos catalogue (both public domain). Interpretive text draws on Vivian Robson's 1923 work (public domain since 1979) and Ebertin-Hoffmann, written as original paraphrase, not reproduction, of either.
Engine integration
The engine consumes this package in place of the code that used to
live in lib/ephemeris/stars/{index,catalog.data,parans}.ts. Bridge
files at the original paths re-export the package surface, so
existing engine call sites are unchanged.
Parity guarantee
Every export of this package produces byte-identical output to the
engine's pre-carve-out implementation — the catalog data file was
copied verbatim (not retyped), and the precession/paran logic is
unchanged arithmetic with only its import paths repointed at
kriya-ephemeris directly (previously via bridge re-exports). Parity
is locked in by the engine's existing test suite (1,398 tests,
including exact-value assertions on Regulus's longitude, the Galactic
Center's position, and the precession drift rate), all of which pass
unchanged against the bridge.
