# NATEGODD Natal chart generator in the spirit of the great 90s desktop astrology programs (Win\*Star / Solar Fire era) — full detail, real ephemeris, written report. ## What it does - **Swiss Ephemeris** computation (bundled `ephe/` files, valid 1800–2400 AD): Sun–Pluto, Chiron, Ceres, Pallas, Juno, Vesta, True North/South Node, Mean Lilith, Part of Fortune, Vertex, ASC/MC/DSC/IC. - **Historical time atlas**: offline city search (25k cities via geonamescache), timezonefinder + IANA tzdata for correct historical offsets and DST (wartime double summer time and all). Manual lat/lon/offset override available. - **7 house systems**: Placidus, Koch, Whole Sign, Equal, Porphyry, Campanus, Regiomontanus. - **Aspects**: 11 aspect types with per-body orbs, luminary bonus, applying/separating, triangular aspect grid, declination parallels/contraparallels. - **Detail**: retrogrades, essential dignities (domicile/exaltation/detriment/fall), element/modality/polarity balances, day/night sect, moon phase + illumination. - **Interpretation report**: hand-written Big Three texts (Sun/Moon/Rising × 12) plus a keyword-synthesis engine for every planet-in-sign, planet-in-house and aspect. Printable. - **Time unknown** mode: casts a noon solar chart, drops houses/angles honestly. - SVG chart wheel (element-tinted zodiac ring, houses, aspect lines, collision-spread glyphs), saved charts in localStorage. - **Synastry / compatibility**: compare any two charts — weighted harmony/tension scoring, biwheel (partner's planets overlaid in your houses), inter-aspect grid, house overlays, and a written compatibility report. - **Export**: chart as re-loadable `.json` file, wheel as SVG or PNG, any report via print → PDF. `📂 Load file` re-imports an exported chart. - **Aspect reference**: every aspect type explained (geometry, orb, feel) in the Aspects tab, plus pair-specific interpretation notes for 30+ classic planet pairs. ## Run ```bash python3 -m venv .venv .venv/bin/pip install -r requirements.txt .venv/bin/python app.py ``` Open http://localhost:7799. ## Layout - `chart.py` — ephemeris computation engine - `geo.py` — city search + historical timezone resolution - `interp.py` — interpretation texts + synthesis engine - `app.py` — Flask server (`/api/search`, `/api/chart`) - `static/` — single-page frontend (vanilla JS, SVG wheel) - `ephe/` — Swiss Ephemeris data files (sepl/semo/seas 1800–2400) Ephemeris data files are from the official Swiss Ephemeris distribution (AGPL, astro.com / github.com/aloistr/swisseph).