Skip to main content

Moira

Ephemeris and Astrology Computation Engine

Python MIT License PyPI Precision: ERFA-Audited Ephemeris: JPL DE4xx AI Visibility: Optimized Status: Stable DOI Featured on Launch Llama

Moira is an astronomy-first astrology engine built for transparent astrology calculations, reproducible chart computation, and an inspectable calculation chain from astronomical inputs to astrological outputs. It is an auditable astrology engine with explicit computational policy, deterministic behavior, and readable reduction stages grounded in modern standards and references including JPL DE441, IAU 2000A/2006, ERFA/SOFA-aligned practices, and Gaia DR3-linked star data where applicable. Performance-critical computations — nutation, SPK kernel reading, apparent planetary evaluation (via NativePlanetaryEvaluator), coordinate transforms, light-time iteration, harmogram analysis, and event searching — are executed by a native C++17 extension (_moira_native) compiled with pybind11.

Why Moira Exists

Most astrology software surfaces results without exposing the mathematical path. Moira exists as a Swiss Ephemeris alternative for users who need visibility into assumptions, intermediates, and provenance, so astronomy remains the foundation and astrology remains the purpose.

AI and LLM Visibility

Moira is designed to be highly discoverable and understandable by AI agents (e.g., GitHub Copilot, ChatGPT, Claude).

  • Machine-Readable Index: See llms.txt for a high-level summary and llms-full.txt for a comprehensive documentation index.
  • Agent Doctrine: The AGENTS.md file defines the "Urania" persona and operational laws for AI collaboration.
  • Structured Documentation: Canonical documentation is maintained in the wiki/ directory with explicit validation reports.

What Makes It Different

Moira is designed for full computational transparency: the computation pipeline is explicit and its stages are named and controllable via the Python API, computational doctrine is explicit rather than hidden in defaults, and validation is treated as first-class evidence rather than post-hoc narrative. The high-performance core (_moira_native) is C++17; the Python layer owns the API surface, orchestration, and per-stage controls.

Who It Is For

Moira is for developers, researchers, and serious practitioners who want a programmable, audit-ready engine for high-integrity astrological work, reproducible pipelines, and methodical comparison against external authorities.

What It Is Not

Moira is not primarily a UI app, not a thin wrapper over opaque compiled stacks, and not convenience-first astrology output generation without traceability.

Quick Capabilities

Moira computes planetary and stellar positions, houses, aspects, lots, dignities, predictive techniques, a full Vedic/Jyotish suite (yogas, Shadbala, Ashtakavarga, upagrahas, avasthas, Jaimini), eclipse and occultation events, and related analytical products on top of a modern astronomical substrate (JPL kernels, IAU models, and validated star frameworks), with a native C++ computational core, Python orchestration layer, inspectable intermediate stages, and an optional FastAPI REST server (moira_server) exposing the engine as typed, versioned routes.


What Moira Computes

Positions and Bodies

  • Planets and luminaries — geocentric and topocentric reduction with iterative light-time, annual aberration, multi-body relativistic deflection (Sun, Jupiter, Saturn, Earth), IAU 2006 frame bias, and WGS-84 topocentric parallax.
  • Fixed stars — sovereign registry of 1,809 named stars with proper motion, parallax, epoch propagation, and Stellar Quality classification. Audited anchor residual against SOFA/ERFA: 0.00048 arcseconds (J1000–J3000).
  • Asteroid catalog — unified catalog of 1,382 asteroids covering all 119 recognized asteroid families, including the classical four (Ceres, Pallas, Juno, Vesta), Centaurs (Chiron, Pholus, Chariklo, Asbolus, Hylonome), and Trans-Neptunians (Ixion, Quaoar, Varuna, Orcus). Built from JPL Horizons as 56 Type-13 SPK shards covering 1600–2500 CE at sub-milliarcsecond interpolation fidelity, discovered via manifest under any kernel search root. User-supplied .bsp kernels remain supported via the integrated daf_writer for any of the 887,000+ numbered minor planets in the JPL catalog.
  • Numbered periodic comets — 497 comets (1P/Halley through 516P) from JPL Horizons as sharded Type-13 kernels (1600–2500 CE), with canonical numbered designations ("1P/Halley") and curated short aliases accepted as inputs.
  • Uranian / Hamburg School bodies — 8 hypothetical transneptunian planets (Cupido through Poseidon) plus Transpluto.
  • Lunar nodes and apsides — True Node, Mean Node, Mean Lilith, True Lilith, and orbital nodes/apsides for all planetary bodies.
  • Variable stars — phase and magnitude engine for eclipsing binaries and intrinsic variables; dedicated Algol API.
  • Multiple star systems — Kepler orbital mechanics for visually resolvable pairs (Sirius AB, Alpha Centauri AB); catalog of 8 astrologically significant systems across VISUAL, WIDE, SPECTROSCOPIC, and OPTICAL types.

Chart Calculation

  • House systems — 22 systems including Placidus, Koch, Regiomontanus, Campanus, Morinus, Porphyry, Whole Sign, Equal, APC, Pullen Sinusoidal Delta/Ratio, and Sunshine. Includes branch-aware high-latitude doctrine where admitted, explicit polar fallback policy, and house_of for direct house placement lookups.
  • Aspects — 22 zodiacal aspects with applying/separating/stationary motion-state detection; declination parallels and contra-parallels; antiscia and contra-antiscia; exact partile and orbed platic status markers (is_partile, is_platic).
  • Aspect patterns — 21 multi-body configurations: T-Square, Grand Trine, Grand Cross, Yod, Kite, Mystic Rectangle, Stellium, Grand Sextile, Thor's Hammer, Boomerang Yod, and more.
  • Midpoints — full midpoint matrix, midpoint trees, 90°/45°/22.5° dial projections, planetary pictures.
  • Traditional dignities — domicile, exaltation, triplicity (diurnal/nocturnal), Egyptian and Ptolemaic terms, face, sect, hayz, and Almuten Figuris.
  • Arabic Parts — 499 lots with dependency graphs and condition profiling.
  • Hermetic decans — 36-decan system with computed positions for all ruling stars.
  • Draconic charts — node-anchored draconic frame (mean or true node) with longitude rotation, engine-backed chart derivation, and caller-supplied position support.

Predictive Techniques

  • Progressions — secondary, tertiary, minor, solar arc (longitude and right ascension), Naibod, ascendant arc; direct and converse variants for all methods.
  • Primary directions — Placidus semi-arc/mundane, Regiomontanus, and Morinus method families with mundane and zodiacal variants; direct and converse directions (converse computed by true role exchange, not arc negation); speculum computation; fixed-star targets; seven conventional time-key presets.
  • Returns — solar and lunar returns; planet returns.
  • Time lords — annual and monthly profections; Firdaria (diurnal and nocturnal sequences, including Bonatti variant); Zodiacal Releasing (Vettius Valens method); Hyleg and Alcocoden.

Vedic / Jyotish Suite

Every Vedic engine is implemented from primary-source research (BPHS, Brihat Jataka, Saravali, Phaladeepika, Uttara Kalamrita, Jataka Parijata, Jaimini Upadesa Sutras) with per-rule citations; where classical sources disagree, the disagreement is an explicit policy switch or a recorded note — never a silent choice.

  • Sidereal foundation — 40+ ayanamsa systems including star-anchored "True" ayanamsas; 27-nakshatra system; Panchanga.
  • Dashas — Vimshottari with nakshatra balance; Chara Dasha (K.N. Rao's named lineage); Varshaphal (annual charts).
  • Vargas — divisional charts (navamsa, dashamansa, dwadashamsa, saptamsa, trimshamsa, and more); Vimshopaka Bala (BPHS 20-point varga-dignity strength over all four classical groups) with vargottama detection.
  • Yogas — 60 classical yogas across six families (Pancha Mahapurusha, Chandra, Surya, all 32 Nabhasa, Raja core, Dhana core), each returned as a proof object: formation conditions with observed evidence, cancellation (bhanga) clauses evaluated first-class, and per-yoga primary-source citations.
  • Shadbala — the complete six-fold strength system plus Bhava Bala (house strength), inline Ishta/Kashta Phala on every planet, and Graha Yuddha transfer disclosure.
  • Ashtakavarga — bindu tables plus kakshya-level transit evaluation (Saturn-first lord order) and Shodhya Pinda, validated to the digit against BPHS Ch. 69's own worked example.
  • Upagrahas — the five kalavelas (Gulika, Kala, Mrityu, Ardhaprahara, Yamaghantaka) with portion-point, Mandi-mode, and lord-sequence lineage policies, plus the five Sun-derived upagrahas.
  • Avasthas — Baladi, Jagradadi, and Deeptadi as per-source rule tables (BPHS / Saravali / Jataka Parijata / Phaladeepika, never merged), plus the six non-exclusive Lajjitadi flags with evidence strings.
  • Jaimini — rasi drishti, arudha padas A1–A12 (Rath/JHora exception default, Raman variant as policy), argala with virodha pairs, and karakamsa with both lineage readings named (Rath D9 vs. K.N. Rao D1).
  • Muhurta — Tara Bala (nine-tara cycle) and Chandra Bala (Chandra Shuddhi with Chandrashtama flagged) as a natal-personalized electional overlay.
  • Sade Sati — phase classification (rising/peak/setting) with Ashtama and Kantaka Shani flags, and kernel-timed phase windows via Saturn sidereal sign-ingress bisection, with retrograde re-entries reported as separate windows.

Advanced Astronomy

  • Eclipses — NASA-canon contact solver for solar and lunar eclipses; Saros series classification with heptagonal vertex labelling; local circumstance computation.
  • Heliacal phenomena — heliacal rising and setting; acronychal rising and setting; planetary elongation extremes.
  • Parans — paranatellonta field analysis with contour extraction and stability metrics.
  • Occultations — lunar occultation of stars and planets; close-approach detection.
  • Stations — retrograde stations with precise stationary-point search.
  • Mapping — Astrocartography (ACG) lines for all planets; Local Space chart positions; Gauquelin sectors.
  • Galactic coordinates — full equatorial-to-galactic transform and reference point catalog.
  • Temporal systems — 28-mansion Arabic lunar stations (Manazil); Sothic cycle drift and Egyptian civil calendar conversion; void-of-course Moon windows.
  • Harmograms — intensity-spectrum research engine (H1–H5); spectral vectors, zero-Aries parts construction, intensity doctrine, and time-domain trace analysis.
  • Harmonics — harmonic chart calculation, aspect-harmonic profiles, vibrational fingerprint analysis.
  • Synastry — inter-chart aspects, house overlays, composite chart (midpoint method), Davison chart (spherical midpoint).
  • Jones chart shapes — all 7 temperament types.

Quick Start

Moira initializes even when no planetary kernel is present. Kernel-dependent operations (for example chart()) raise a clear MissingEphemerisKernelError until a kernel is configured. See Kernel Setup below before executing planetary examples.

from datetime import datetime, timezone
from moira import Moira

m = Moira()

# 1. Planetary positions
chart = m.chart(datetime(2000, 1, 1, 12, 0, tzinfo=timezone.utc))
print(f"Sun:  {chart.planets['Sun'].longitude:.6f} deg")
print(f"Moon: {chart.planets['Moon'].longitude:.6f} deg")

# 2. House cusps (Placidus, London)
from moira import HouseSystem
houses = m.houses(
    datetime(2000, 1, 1, 12, 0, tzinfo=timezone.utc),
    latitude=51.5074,
    longitude=-0.1278,
    system=HouseSystem.PLACIDUS,
)
print(f"ASC: {houses.asc:.4f} deg  |  MC: {houses.mc:.4f} deg")

# 3. Aspect patterns
from moira.patterns import find_all_patterns
patterns = find_all_patterns(chart.longitudes())
for p in patterns:
    print(f"{p.name}: {', '.join(p.bodies)}")

# 4. House placement lookup
from moira.houses import house_of
sun_house = house_of(chart.planets['Sun'].longitude, houses)
print(f"Sun is in house: {sun_house}")

REST API Server

The engine ships with an optional FastAPI transport layer (moira_server) that exposes the admitted engine surface as typed, versioned REST routes.

pip install moira-astro[server]
uvicorn --factory moira_server:create_app
  • 60+ route families under /v1 — charts, positions, houses, per-stage pipeline visibility, progressions (the full dispatched method menu advertised as OpenAPI enums), primary directions, returns, transits, dashas and time lords, the complete Vedic suite (yogas, shadbala, ashtakavarga, upagrahas, avasthas, Jaimini, muhurta, sade sati), draconic charts, astrocartography, asteroids and comets, fixed stars, harmonics, harmograms, electional scoring, synastry and relationship products, and more.
  • Typed transport — every route family has dedicated Pydantic request/response models, serializers, and services; doctrine stays in the engine, the server is transport and orchestration only.
  • OpenAPI discovery — tagged schema with installed discovery metadata for machine consumers.

Requirements and Installation

  • Python 3.10 or later
  • scipy >= 1.14 (required runtime dependency)
  • A C++ compiler, cmake >= 3.24, and pybind11 >= 2.12 (required at build time for the native extension)
  • A JPL DE-series planetary kernel (de430, de440, or de441 — not bundled; see below)
# Standard install (builds the native C++ extension)
pip install moira-astro

# With the FastAPI REST server (fastapi, uvicorn, pydantic)
pip install moira-astro[server]

# With Lunar Graze support (spiceypy, laspy, requests)
pip install moira-astro[lunar-graze]

Kernel Setup

Moira requires a JPL DE-series SPK planetary kernel for all planetary computation. No kernel is bundled — the files are large and the choice of release belongs to the user.

All kernel reading is performed by Moira's own native C++ SPK/DAF reader. As of 4.0.0 there is no jplephem runtime fallback: segment types outside the native reader's support raise an explicit error rather than silently routing through a third-party library.

Supported kernels:

Kernel File Size Date range Notes
DE441 de441.bsp ~3.1 GB ~13 200 BCE – ~17 200 CE Original design target; maximum date coverage
DE440 de440.bsp ~114 MB 1550 BCE – 2650 CE Current JPL standard; recommended for most users
DE430 de430.bsp ~128 MB 1550 BCE – 2650 CE Widely deployed predecessor to DE440

Kernel Manager (GUI)

The easiest way to download and configure a kernel is the built-in Tkinter interface. It requires no extra dependencies — Tkinter ships with CPython on all platforms.

moira-kernel-manager

The window shows all supported kernels with extended descriptions (design rationale, date coverage, size trade-offs), live Installed/Missing status for each, and a real progress bar for downloads. You can also point Moira at a .bsp file already on disk without re-downloading.

What the GUI provides:

  • Kernel list — planetary (de430, de440, de441) and supplemental (asteroids, small bodies) sections with size, date range, and status per row.
  • Detail panel — selecting a row shows a full description of that kernel's coverage, accuracy, and when to prefer it over the alternatives.
  • Download with progress — streams the selected kernel in the background; a progress bar tracks bytes received. A Cancel button interrupts the transfer and removes the partial file.
  • Use selected — activates an installed kernel for the current session via set_kernel_path().
  • Browse… — open any .bsp file already on disk and set it as the active kernel immediately.

CLI

# List all kernels and their status
moira-download-kernels --list

# Download all missing kernels (interactive prompt)
moira-download-kernels

# Download without prompting
moira-download-kernels --yes

SPK Kernel Writer (GUI)

Moira supports building custom Type 13 SPK kernels using an integrated compiler GUI (built on Tkinter). This utility fetches physical position vectors directly from the JPL Horizons API and packages them into a native-readable binary kernel (.bsp).

moira-daf-writer

What the custom kernel writer provides:

  • Guided Horizons Import: Search the JPL Small Body Database (SBDB) by designation or name for any numbered asteroid or comet.
  • Custom Parameter Controls: Configure start/end Julian Days, step size in days, interpolation center, and coordinate frame.
  • Verification Loop: Automatically runs a post-compilation check to verify segment availability and test coordinate evaluations.

Engine readiness model

  • Moira() succeeds even if no kernel is installed. It auto-discovers any compatible kernel in the standard locations.
  • m.is_kernel_available() reports kernel readiness.
  • m.get_kernel_status() explains expected paths and remediation.
  • m.available_kernels lists installed planetary kernels (small-body shard catalogs are discovered separately via their manifests).
  • Kernel-dependent calls raise MissingEphemerisKernelError with instructions.

Standard location: kernels/<filename>.bsp relative to the repository root, or ~/.moira/kernels/. The engine resolves either automatically.

Custom location: pass the path at construction, or call set_kernel_path() before the first Moira() instantiation:

from moira.spk_reader import set_kernel_path
from moira import Moira

set_kernel_path("/path/to/de440.bsp")
m = Moira()

print(m.is_kernel_available())
print(m.get_kernel_status())
print(m.available_kernels)

Direct download links (JPL SSD):

Small-Body Catalogs (Asteroids and Comets)

The unified asteroid catalog (1,382 bodies as 56 Type-13 shards) and the numbered periodic comet catalog (497 comets as 20 shards) are too large to ship inside the wheel and are distributed as separate downloads. Install a catalog by placing its shard directory — asteroids/ or comets/, each containing its shards and manifest.json — under any kernel search root (kernels/ at the repository root or ~/.moira/kernels/). The engine discovers every manifest under every search root automatically; no configuration call is required.

Note for pre-4.0.0 installs: the single-file supplemental kernels (comets.bsp, centaurs.bsp, minor_bodies.bsp) no longer auto-load. All small bodies now resolve through the sharded manifests.


Data Inventory

Layer Source Bundled Note
IAU 2000A/2006 nutation and precession tables IAU Yes 2,414 terms; native C++ (_moira_native)
DE-series planetary kernel JPL No de430 (~128 MB), de440 (~114 MB), or de441 (~3.1 GB); download separately
Named star registry Sovereign (star_registry.csv + JSON provenance) Yes 1,809 stars; license-independent
Unified asteroid catalog JPL Horizons No 1,382 asteroids across all 119 families; 56 Type-13 shards, 1600–2500 CE; separate download, manifest-discovered
Numbered periodic comet catalog JPL Horizons No 497 comets (1P–516P); 20 Type-13 shards, 1600–2500 CE; separate download, manifest-discovered

Native C++ Performance

Moira's computational core (_moira_native) is implemented in C++17 and compiled as a pybind11 extension at install time. Performance-critical paths — IAU 2000A nutation evaluation, SPK/DAF kernel reading, apparent planetary evaluation (via NativePlanetaryEvaluator), coordinate transforms, light-time iteration, harmogram computation, precession, and event searching — execute natively without Python overhead.

This matters most in phenomenon-searching loops (retrograde periods, eclipse searches, heliacal events, conjunction sweeps) where core transforms are evaluated thousands of times. The native extension is a required component and is built automatically during pip install.


Validation Evidence

Moira is validated as a three-layer corpus. Each layer has its own correct evidence standard.

Astronomy layer — authoritative physical oracles first, enforced regression thereafter. References: IAU ERFA/SOFA, JPL Horizons, NASA catalogs, IERS.

Astrology layer — external chart software where stable and meaningful; doctrine-grounded invariants where no universal oracle exists. References: Swiss Ephemeris, Astro.com, canonical doctrine tables, structural invariants.

Experimental layer — subsystem-specific surfaces for sovereign or modern domains. Domains: sovereign fixed stars, variable stars, multiple star systems, galactic transforms, eclipse Saros classification.

Every validated claim must pass three gates:

  1. Gate of Source — inputs and reference data are tied to an independent authority.
  2. Gate of Flow — the computational path is explicit and inspectable.
  3. Gate of Oracle — outputs are benchmarked against an external reference appropriate to the domain.

When residuals remain, Moira documents them as model-basis differences rather than mislabeling them as engine defects. Two systems may be internally correct while answering different mathematical questions because of differing assumptions — for example, Delta-T branch, retarded-versus-geometric Moon treatment, or event-definition objective.

Report Verification Source
VALIDATION_ASTRONOMY.md IAU ERFA/SOFA, JPL Horizons, NASA. Geocentric residual: 0.576 arcseconds (documented Delta-T divergence).
VALIDATION_ASTROLOGY.md Swiss Ephemeris, Astro.com, canonical doctrine tables. Houses, ayanamshas, predictive cycles.
VALIDATION_EXPERIMENTAL.md SOFA/ERFA, Swiss swetest, AAVSO, GCVS, binary orbit ephemerides. Sovereign stars, variable stars, multiple systems.

The Reduction Pipeline

graph TD
    A[JPL Planetary Kernel\nChebyshev state vectors] --> B[SSB Barycentric Position\nkm · ICRF]
    C[Sovereign Star Registry\n1809 named stars] --> D[Stellar Astrometric Position\nproper motion · parallax]
    B --> E[1 · Light-Time Iteration\nbody at t − τ  where τ = d/c]
    E --> F[2 · Gravitational Deflection\nSun · Jupiter · Saturn · Earth]
    F --> G[3 · Annual Aberration\nrelativistic · IAU SOFA]
    G --> H[4 · IAU 2006 Frame Bias\nICRF → Mean Equator J2000]
    D --> H
    H --> I[5 · IAU 2006 Precession\nP03 polynomial series]
    I --> J[6 · IAU 2000A Nutation\n1365 lunisolar + 687 planetary terms]
    J --> K[True Equinox and Equator of Date]
    K --> L[7 · Topocentric Parallax\nWGS-84 · optional]
    K --> M[8 · Atmospheric Refraction\nSky positions only · optional]
    K --> N[Ecliptic Projection\nTrue obliquity of date]
    N --> O[Zodiacal Longitude · Latitude · Distance]
    K --> P[Sidereal Frame · Ayanamsa\noptional]
    K --> Q[House Cusps · 22 Systems\nrequires lat/lon]

Worked Example: Mars at J2000.0

The following traces every pipeline stage for Mars on 2000 January 1, 12:00 TT, using live DE441 kernel data. All numbers are from the running engine.

Time: JD_UT 2451545.000000 → JD_TT 2451545.000739  (ΔT = +63.807 s)

Step Operation Vector / Value Shift from Previous
0 DE441 kernel read — SSB → Mars (206,980,508.6, −184,891.6, −5,666,529.8) km
0 DE441 kernel read — SSB → Earth (−27,568,641.0, 132,361,060.2, 57,418,514.1) km
0 Geometric geocentric — Mars − Earth distance: 276,697,408.2 km = 1.849608 AU
1 Light-time iteration — Mars at t − τ τ = 0.010683 days = 15.383 min 15.761 arcsec
2 Gravitational deflection — Sun + Jupiter + Saturn sub-arcsecond bending of light path 0.006 arcsec
3 Annual aberration — Earth velocity 29.786 km/s relativistic displacement toward apex 14.070 arcsec
4 IAU 2006 frame bias — ξ₀ = −16.617 mas, dε₀ = −6.819 mas fixed ICRF → mean equinox J2000 rotation 0.023 arcsec
5 IAU 2006 precession — P03 polynomial series negligible at J2000 (reference epoch) 0.016 arcsec
6 IAU 2000A nutation — Δψ = −13.932″, Δε = −5.769″ true equator and equinox of date 14.351 arcsec
7 Ecliptic projection — true obliquity ε = 23.437677° λ = 327.963300° · β = −1.067779° · d = 1.849688 AU

Final position: Aquarius 27° 57′ 48″  ·  distance 1.8497 AU  ·  speed +0.7757°/day (direct)

Total pipeline correction from geometric to apparent: −43.760 arcsec

The largest contributors are nutation (−13.932″), annual aberration (−14.070″), and the combined light-time displacement (−15.761″). Gravitational deflection (0.006″) and frame bias (0.023″) are sub-arcsecond but non-negligible at sub-arcsecond accuracy targets.

Pipeline Controls

Each correction stage can be toggled independently via planet_at(). The table below shows the measurable effect of disabling each stage on the Mars J2000.0 result.

Parameter Default Effect on Mars J2000.0 longitude Function
apparent=True True Full pipeline active planet_at()
apparent=False Geometric position; all corrections skipped. Δ = +43.760 arcsec planet_at()
aberration=False Aberration stage skipped. Δ = +14.069 arcsec planet_at()
grav_deflection=False Deflection stage skipped. Δ = +0.003 arcsec planet_at()
nutation=False Nutation skipped; mean equinox used. Δ = +13.932 arcsec planet_at()
observer_lat/lon None When supplied, adds topocentric parallax (WGS-84). Effect: ~1° for Moon, <0.01″ beyond Jupiter planet_at()
refraction=True True Atmospheric refraction applied to altitude. Effect: ~0.57° at horizon sky_position_at()
delta_t_policy None Controls UT → TT conversion branch (IERS tables, polynomial, hybrid physical) both

Project Documentation

The canonical documentation tree lives in wiki/. The flat moira.wiki/ Git wiki mirror is generated from it by python scripts/sync_git_wiki.py and should not be edited by hand.

Document Contents
01_LIGHT_BOX_DOCTRINE.md Transparency and derivation as design constraints.
BEYOND_SWISS_EPHEMERIS.md Capabilities enabled by sovereign catalogs, explicit policy, and modern Python.
HOUSE_SYSTEM_DIVERGENCE.md House-system derivation and discretionary divergence from conventional Swiss-facing behavior.
CONSTITUTIONAL_PROCESS.md The Subsystem Constitutional Process — the development and governance protocol.
MOIRA_ROADMAP.md Feature implementation status and mathematical accuracy register.

License

MIT (c) 2026 TheDaniel166. See PROVENANCE.md for license and Swiss-lineage provenance clarity.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moira_astro-4.1.0.tar.gz (2.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

moira_astro-4.1.0-cp314-cp314-win_amd64.whl (3.8 MB view details)

Uploaded CPython 3.14Windows x86-64

moira_astro-4.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

moira_astro-4.1.0-cp314-cp314-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

moira_astro-4.1.0-cp314-cp314-macosx_10_15_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

moira_astro-4.1.0-cp313-cp313-win_amd64.whl (3.7 MB view details)

Uploaded CPython 3.13Windows x86-64

moira_astro-4.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

moira_astro-4.1.0-cp313-cp313-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

moira_astro-4.1.0-cp313-cp313-macosx_10_13_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

moira_astro-4.1.0-cp312-cp312-win_amd64.whl (3.7 MB view details)

Uploaded CPython 3.12Windows x86-64

moira_astro-4.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

moira_astro-4.1.0-cp312-cp312-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

moira_astro-4.1.0-cp312-cp312-macosx_10_13_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

moira_astro-4.1.0-cp311-cp311-win_amd64.whl (3.7 MB view details)

Uploaded CPython 3.11Windows x86-64

moira_astro-4.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

moira_astro-4.1.0-cp311-cp311-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

moira_astro-4.1.0-cp311-cp311-macosx_10_9_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.11macOS 10.9+ x86-64

moira_astro-4.1.0-cp310-cp310-win_amd64.whl (3.7 MB view details)

Uploaded CPython 3.10Windows x86-64

moira_astro-4.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

moira_astro-4.1.0-cp310-cp310-macosx_11_0_arm64.whl (3.4 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

moira_astro-4.1.0-cp310-cp310-macosx_10_9_x86_64.whl (3.4 MB view details)

Uploaded CPython 3.10macOS 10.9+ x86-64

File details

Details for the file moira_astro-4.1.0.tar.gz.

File metadata

  • Download URL: moira_astro-4.1.0.tar.gz
  • Upload date:
  • Size: 2.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for moira_astro-4.1.0.tar.gz
Algorithm Hash digest
SHA256 030737b3e4eeb4d039394cc5f6bbb43aa0e65d98b0c570bc4c6e50c30c7ec3b4
MD5 ff58ba0aa4cd3810759d4679f230c0c6
BLAKE2b-256 edfc2bd90820a55d2fd37c45f454379e59e77bb446c4f8ae7f612130c63567b6

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 61a5764198ef1a692af9be61459346b1091a18e875246f4ca41d1bf0747506e6
MD5 4f9f68fd199398c9ab0bf69dbd67081e
BLAKE2b-256 57d027902bf73055f9082a21dcb0373a14fa050aff41aac64520bce9a3452506

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 766dc8830bb163388619409adc06faf44d588c2bb366238719e67eb4792ddc2c
MD5 22ae91b01eba1da218d2ca1380626df2
BLAKE2b-256 93c0bd0808f8a888b284b3a5d1729f9c8b2c9cbb84d3e1016c8c223a33ca94b0

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2990baa04c4e778972f7749879e60b7f3adf9450311588b6ebef5f2f47d1e4d7
MD5 051f16317e19062542fe85be1ee60922
BLAKE2b-256 06f08ab01ae53f7b50ecc3aa1dddd3745df7ff2d62e7d86dfbff8aa65c0b16f4

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 ea7efb806e5369be418d20d3b327416f2ba0dac5d8ebbe99936697c546bcdcda
MD5 3db110d7cb06302a672cba4ea4e8b396
BLAKE2b-256 03abea3a3acd1f3b00903a19a258dd442cff55e408a5a7b21da1c461ca7cdd96

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 c9e656278ced20d97d7f49c29be523d310490f18ebae8a1044801f4895f47f8e
MD5 832c83789aca046af665cbd2190801c8
BLAKE2b-256 d0632f71aa6ec95341c08fd737d0ddfa33732aeb5fee8ef9718e3d9b79cebf09

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dcf4f4756c4e05876a19867633681c356bad9537b158a7b0de0e48a6e69d8fab
MD5 1199a380263186fd0e25fd1b148653b0
BLAKE2b-256 4cb1ca54f70dd665754568ca3fe58124dc026861c6246dfcad813cbe925052b0

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4a8716a186bbfd07f80f01e49acb96df6b284c818a5154ea31edace51ce1218d
MD5 4ca2f84f53f8c2b3619ff33a5e5ce713
BLAKE2b-256 687e28b8de28bf694fa753bb61e61e7ff6f7ae9d6a343efef6969c8e335442ca

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 e6e3abed4eab356835df91e5156a35ea0a5b523734503c8cb0b22338ddd6ed09
MD5 70102ebec3b580ffb63f6a07e73d5640
BLAKE2b-256 5b03acf0699e13b19d53248063f1d4cc1fec807c10cfa250027654f462772ec9

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 1812f9a0710b1f7917f52dd40d0edf47b165dcb6c88ae2cad84079dfc288db52
MD5 d24eb2b2ab6586f1c8e04592a9e66109
BLAKE2b-256 a882fd45d201d96dd466405a18cae3da70a208bf7966d12cc9e8caf3d0d1162f

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 37cd9a0771cdf1af3e7d85018d27fa5df37a0e8027e06166db62b40cd2700570
MD5 60b897bf309e22a761132f917665c81b
BLAKE2b-256 b719e9ba64d17eeea501e99c1952c1c0fd200df1f6d221420afdd5817e1c0bbd

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 180eeedafe41553cd0112b9af9aaecc6ad7891cd3429db08ee6bf65108d5f8e5
MD5 6ea328b6e982636fe87ca4dc92e63b0d
BLAKE2b-256 e81b0be424476b171677ddd35474ad837fe9f36bd2126c52e3eca85ab7e3873d

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 80aa7ecdf49b83e5911c632bb257a558fb5428c5dd418564f41bfccd04926b04
MD5 e15a7e63312a234871af5e7f281bf6e9
BLAKE2b-256 e53a63b807634af4931c1eb8850bed2922f52a012d98bd2eb2ab3968ae1bdade

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 6f401f7f7e3a7fa0c06b917f63472dc456f4a6c7219274ecd55062c362025862
MD5 52cfd2024a1204c7ba79e79d27500db9
BLAKE2b-256 94528d6eab2605f947b06eaa4dd7f762044752e41b0139a481d06ce5692977dd

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9c78308bd5319dce61b41b73c50453514ff71490d112cefdf0154048fa7310a6
MD5 c3d0bb21017d75579de2eb2a9bb6b0eb
BLAKE2b-256 0bc4474233d986761305afbce93f9edd2a7c6fa904e20baf60793ee1ab454f8a

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d78f2dc5388ee82d545b959fe016e3249f04532769f342952ca250da48d41ce9
MD5 23b1f50b43e87c56737998d69a9daaae
BLAKE2b-256 dd744848846778a7c664824055ebc05d21331d0e85dc0fabddb6ed065869052f

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f87115d8def99984e19a394429594edb2e2864aee4f5956701ff9524af62c372
MD5 62c9970219e7d2621ec4c2aea8e4d430
BLAKE2b-256 ace3f650107557734609ccee10944fa2c95df3556a0dab8cb53638768f0ead28

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e6d675ff6c185ec05e882619418be9b223148342cc8b69f24f9a958927a03788
MD5 9b8bd197d68b421a3e5061f4ee009f5a
BLAKE2b-256 51c765e53ed7ed95678e244a5a7bef4f6217e82fb1febc43b7705c61a9e18231

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 6cecdec37fbafa9c7ce60383c498db06161600c93b3364fbccc85d3d8f233bef
MD5 0b5ff692519c036c44ecfb48295dd32e
BLAKE2b-256 b3299faa9650d72c6fb18ebf33ab803d91264a2c9e85d51c0f7c7fd050e28507

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 dac2ccdfddfe04f2ab7ce300efe49697dec1346a4ef24d1bdeed966292308b69
MD5 8205385cc201f92811901edc6ac84004
BLAKE2b-256 11f9f99a3c0d9dfa29246cbf1d6d0e7f62a33f21327a3178609f5c7cb84047b5

See more details on using hashes here.

File details

Details for the file moira_astro-4.1.0-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for moira_astro-4.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 a33971af6556979f38e7a1b5154ed9081dbc8dac540655f206eaafb86330cd90
MD5 f7ae5c6a88826de21b90c2d4e580c262
BLAKE2b-256 6860f23041bbe6e8d2e7bfee56857a6088da86e0c99a6a723afdcf3ded9f3082

See more details on using hashes here.

Release history Release notifications | RSS feed

6.4.1

21 files

6.4.0

21 files

6.3.0

21 files

6.2.2

21 files

6.2.1

21 files

6.2.0

21 files

6.1.1

21 files

6.1.0

21 files

6.0.1

21 files

6.0.0

21 files

5.2.3

21 files

5.2.2

21 files

5.2.1

21 files

5.2.0

21 files

5.1.2

21 files

5.1.1

21 files

5.1.0

21 files

5.0.0

21 files

4.2.1

21 files

4.2.0

21 files

This release

4.1.0 This release

21 files

4.0.1

21 files

4.0.0

21 files

3.4.3

21 files

3.4.1

21 files

3.4.0

21 files

3.3.4

21 files

3.3.0

2 files

3.2.4

2 files

3.2.3

2 files

3.2.2

2 files

3.2.1

2 files

3.2.0

2 files

3.1.0

2 files

3.0.0

2 files

2.2.0

2 files

2.1.3

2 files

2.1.2

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page