GitHub repositories
- Thirty repositories were inventoried from GitHub API searches on 2026-09-15 across Python, JavaScript, TypeScript, Rust, Go, Java, C++ and Julia. Most are small (0 to 3 stars) and recent (2024 to 2026). Star counts measure popularity, not correctness.
- Three method families. NASA Canon coefficient consumers include tahze0, aravpanwar, Absolute-Eclipse, johnarban and umbra-atlas. Eclipse-Engine consumes independently fitted DE440s elements. Geometric computation on Astronomy Engine or Skyfield and Meeus/textbook ports provide other routes 1 2 3 4.
- The survey includes public limb work. tomasrojasc/eclipse-2026 builds beads from LOLA for the 2026 eclipse, and SolarEclipseWorkbench ships a limb band file. The surveyed repositories do not derive general limb-corrected path limits 5 6.
- Terrain is handled by four. Eclipse-Engine uses a DEM plus OpenStreetMap buildings, eclipsite uses EU-DEM at 25 m, eclipse-3d-sim ray-casts Copernicus at 30 m, and umbra-eclipse-atlas reads Copernicus through Open-Meteo.
- Documented validation is rare: Absolute-Eclipse reports 1 to 5 s residuals against Espenak, eclipsite 0.36 s mean against NASA elements and 0.60 s RMS against IGN durations, tahze0 a 0.26 per cent median path-width error over 300 eclipses, Starainrt/astro second-level global agreement with NASA.
- Five most complete: Stellarium, covered in open-source libraries, then RHerAle/Eclipse-Engine, tahze0/solar-eclipse-explorer, tomasrojasc/eclipse-2026, Xeratec/eclipsite. NASA's JSEX and its ports remain the cleanest minimal reference.
The question. Which public repositories contain substantive solar eclipse computation, what do they implement, from which formulas and elements, with which constants, and do any of them handle limb profiles, terrain or catalogue generation?
Inventory scope
The inventory covers thirty public eclipse-computation repositories documented on 2026-09-15. Repository metadata and author documentation identify languages, licences and capabilities. Star counts and last-push dates describe that snapshot. Image-processing software and unrelated products named Eclipse are outside the scope 7.
Repositories
Besselian element consumers
RHerAle/Eclipse-Engine. JavaScript, AGPL-3.0, 0 stars, last push 2026-09-14. The engine behind eclipseradar.com for 2026 to 2050: "Besselian shadow geometry: contacts, obscuration, magnitude, central line, limits, shadow outline, and obscuration bands", plus spectral irradiance with limb darkening and ICNIRP exposure limits, "Terrain analysis: skyline toward the Sun from elevation models and OpenStreetMap building data", and solar-limb video stabilisation. Its data/eclipses.json is "the catalogue of Besselian elements, fitted to the JPL DE440s ephemeris", The repository consumes these independent elements. Its element-fitting generator is not published in the surveyed repository. No dependencies. Data CC-BY-SA-4.0 1.
tahze0/solar-eclipse-explorer. Python, MIT code, 0 stars, last push 2026-09-08. Reconstructs all 11,898 Canon eclipses "computed locally from NASA Five Millennium Canon Besselian elements" from eclipse_besselian_from_mysqldump2.csv, with umbra and penumbra modules, a 14-step build pipeline and reported "median 0.26% error" in path width against catalogue values on 300 reference eclipses 2.
aravpanwar/besselian. Python, AGPL-3.0, 0 stars, last push 2026-09-14. Local circumstances from NASA elements intersected with OpenStreetMap populated places for 2027 August 2 in Egypt. States for penumbral and for umbral contacts, ΔT = 76.0 s, and that omitting ΔT in the hour angle "introduces ~32 km longitude error". Validates Sun altitude 81.69° and duration 382.5 s at greatest eclipse against published values 8.
Absolute-Eclipse/eclipse-data. JavaScript, MIT code and CC-BY-4.0 data, 0 stars, last push 2026-06-17. Local circumstances for 9,438 European cities for 2026 and 2027 from "Besselian elements sourced from F. Espenak (NASA/EclipseWise)", with ΔT, lunar-limb adjustments and refraction documented, elevation from Copernicus, NASA and ASTER, "accuracy within 1–5 seconds for greatest eclipse and 0.05 percentage points for partial phases" against NASA and Espenak, residuals published, and near-limit cities flagged 9.
johnarban/eclipse_explorer. TypeScript, GPL-3.0, 0 stars, last push 2026-07-15. A TypeScript port of NASA's JavaScript Solar Eclipse Explorer (JSEX) with SE2001.ts and SE2024.ts element files and a test file 10. ebradyjobory/eclipse-explorer. JavaScript, GPL-2.0, 16 stars, one commit in 2010. It mirrors NASA's JSEX and JLEX unchanged 11.
plhery/umbra-eclipse-atlas. TypeScript, MIT, 0 stars, last push 2026-09-08. Browses 11,898 eclipses using "Besselian elements from NASA's Five Millennium Canon via the @astronomy-bundle/solar-eclipse library", Copernicus DEM skyline via Open-Meteo, and states it is "a planning aid, not an official prediction service" 12.
gmiller123456/FiveMillenniumCanonOfSolarEclipses-Besselian-Elements. Python, 3 stars, last push 2023-03-10. Repackages NASA's elements as CSV, JS and JSON with condensing scripts. Data use requires the Espenak acknowledgment 13. Greg Miller's site also documents generating polynomial elements from a DE405 extract with and m, fitting five points at h with Gauss-Jordan elimination, and matching Espenak "to approximately seven decimal places" 14, and a prediction article citing the Explanatory Supplement, Meeus, Chauvenet, Green and Smart 15 16.
Frencil/eclipsetracks. Python and JavaScript, Apache-2.0, 31 stars, last push 2024-02-20. Scrapes NASA path tables into CZML for a Cesium globe and does not compute the umbra itself 17.
Geometric computation on Astronomy Engine or Skyfield
Xeratec/eclipsite. Python, MIT, 2 stars, last push 2026-08-12. Ranks observing sites by "P(clear line of sight) × eclipse depth × terrain gate × model-agreement discount × drive-time discount". Local circumstances from JPL DE421 via Skyfield, cross-checked against NASA Besselian elements to "0.36s mean difference". It adds an EU-DEM 25 m skyline via OpenTopoData and cloud ensembles. Validation gives "RMS 0.60s" against IGN and Generalitat de Catalunya durations, which "caught a solar-radius convention error worth 1.3 seconds per site" 18.
tomasrojasc/eclipse-2026. Python and TypeScript, no licence stated, 0 stars, last push 2026-08-12. Contact times for Spain via Skyfield and DE421, and beads "computed from the Moon's actual shape. The app builds a limb profile from LOLA laser altimetry for the Moon's libration at your contact time, then slides that jagged limb across the Sun's edge". It uses LRO LOLA ldem_16.img at 16 pixels per degree, about 1.9 km at the limb, with the NAIF moon_pa_de421_1900-2050.bpc kernel. There are 84 tests, including totality-band checks for 11 cities 5.
angristan/eclipse. TypeScript, MIT, 1 star, last push 2026-09-09. Paths by intersecting the Sun-Moon axis with the WGS84 ellipsoid using astronomy-engine's SearchGlobalSolarEclipse and SearchLocalSolarEclipse, umbra radius by similar triangles, "no database and no data files", and "Overall accuracy is a few kilometers: great for a map, not for planning an expedition to the edge" 19.
mf4633/eclipse-predictor. HTML single file, MIT, 0 stars, last push 2026-09-08. Catalogue of 1900 to 2200, about 690 events, from astronomy-engine, "Besselian elements derived from position data" to trace the path, claims "±1–2 km ground accuracy" and local contacts "to a few seconds" against NASA 20.
carlok/eclipse-3d-sim. Python and React, no licence stated, 1 star, last push 2026-07-25. Astronomy Engine circumstances compared against terrain by ray-casting a WGS84 GeoTIFF DEM, optionally Copernicus 30 m from OpenTopography, plus a manual obstacle editor 21.
jpatka/Eclipse-Explorer. Python, MIT, 0 stars, last push 2026-08-14. Skyfield with DE421, refraction, and CSV and iCalendar output. No validation is stated, and it was developed with an LLM assistant 22.
pmisson/pyeclipsesimulator. Python, MIT, 4 stars, last push 2025-09-07. Astropy-based contacts with refraction libraries and Open-Meteo elevation, "compared with xjubier.free.fr" with discrepancies of a few seconds, "purely demonstrative", mostly LLM-generated 23.
AstroWimSara/SolarEclipseWorkbench. Python 3.11, GPL-3.0, 20 stars, last push 2026-08-07. Camera-control workbench computing C1, C2, MAX, C3, C4, sunrise and sunset. "Astropy/IERS is used to compute Delta T (TT − UT1)", solar radius "959.95 ±0.05 arcseconds", a bundled lunar_limb_band_v1.bin, and SPICE kernels for the Moon 6.
sPaMFouR/SolarEclipse. Jupyter, 2 stars, 2021. It uses astropy and astroplan, is "under development", and documents no method 24.
Element generators and textbook ports
i230010/sedategenerator_v2. Python, MIT, 2 stars, last push 2026-09-15. Emits eclipse dates with polynomial elements x0..x3, y0..y3, d0..d3, l10..l13, l20..l23, mu0..mu3, tan f1, tan f2, and ΔT, from a bundled ephem folder whose source is not documented 25.
RyuuNeko1107/umbra-rs. Rust, Apache-2.0 or MIT provisional, 0 stars, last push 2026-09-15. "Experimental pure-Rust solar eclipse prediction engine" with VSOP87, ELP-MPP02 and IERS EOP inputs, mean limb, precision targets of ±1 to 2 s, and the statement that it is "not ready for use" 26.
johanley/custom-solar-eclipse-viewer. Java, no licence stated, 2 stars, last push 2024-06-03. Local circumstances with Meeus's Elements of Solar Eclipses, 1989, as "my main reference" and the 1961 Explanatory Supplement 27.
Starainrt/astro, Go, Apache-2.0, 157 stars, last push 2026-08-06; commenthol/astronomia, JavaScript, MIT, 180 stars; soniakeys/meeus, Go, MIT, 376 stars, 2019; and andrmoel/astronomy-bundle, PHP, MIT, 12 stars, are covered in open-source libraries 28 4 29 30.
curiousleo/twilight, C++, 2013, integrates Sun, Earth and Moon numerically and tests eclipse geometry with tangent lines 31. fizyk20/eclipse-predictor, Rust, 2022, has 8 commits and no README detail 32. ArctynFox/SunSketcher, Java, 2 stars, is the NASA-partnered Android app for crowd-sourced Baily's beads imagery. Its README covers the build only 33.
Comparison matrix
| Repository | Language | Stars | Last push | Elements source | Global path | Local contacts | Limb | Terrain | Catalogue | Validation stated | Licence |
|---|---|---|---|---|---|---|---|---|---|---|---|
| Stellarium 34 | C++ | 9,987 | 2026-09-15 | Computed, own ephemeris | Yes | Yes | No | No | Yes | No | GPL-2.0 |
| cosinekitty/astronomy 35 | C, JS, Py, C#, Kotlin | 1,016 | 2025-01-27 | Geometric | Peak only | Yes | No | No | Yes | Against NOVAS | MIT |
| aloistr/swisseph 36 | C | 726 | 2026-09-14 | Geometric | Central line | Yes | No | No | Yes | Error budget | AGPL or paid |
| soniakeys/meeus 29 | Go | 376 | 2019-03-01 | Meeus ch. 54 | No | No | No | No | Yes | No | MIT |
| commenthol/astronomia 4 | JavaScript | 180 | 2025-08-30 | Meeus ch. 54 | No | No | No | No | Yes | No | MIT |
| Starainrt/astro 28 | Go | 157 | 2026-08-06 | VSOP87, ELP2000 | Yes | Yes | No | No | Yes | NASA, seconds | Apache-2.0 |
| Frencil/eclipsetracks 17 | Python, JS | 31 | 2024-02-20 | NASA tables | Imported | No | No | No | No | No | Apache-2.0 |
| AstroWimSara/SolarEclipseWorkbench 6 | Python | 20 | 2026-08-07 | SPICE, astropy | No | Yes | Band file | No | No | No | GPL-3.0 |
| ebradyjobory/eclipse-explorer 11 | JavaScript | 16 | 2010-12-22 | NASA Canon | No | Yes | No | No | No | NASA code | GPL-2.0 |
| andrmoel/astronomy-bundle 30 | PHP | 12 | active | VSOP87, Meeus | No | Yes | No | No | No | No | MIT |
| pmisson/pyeclipsesimulator 23 | Python | 4 | 2025-09-07 | astropy | No | Yes | No | Elevation | No | vs Jubier, seconds | MIT |
| gmiller123456 Besselian 13 | Python | 3 | 2023-03-10 | NASA Canon | No | No | No | No | Data only | No | NASA terms |
| i230010/sedategenerator_v2 25 | Python | 2 | 2026-09-15 | Own ephem | No | No | No | No | Elements | Tests | MIT |
| Xeratec/eclipsite 18 | Python | 2 | 2026-08-12 | Skyfield DE421 plus NASA | No | Yes | No | EU-DEM 25 m | No | 0.36 s, 0.60 s RMS | MIT |
| johanley/custom-solar-eclipse-viewer 27 | Java | 2 | 2024-06-03 | Meeus 1989 | No | Yes | No | No | No | No | None |
| sPaMFouR/SolarEclipse 24 | Jupyter | 2 | 2021-06-09 | astropy | No | Yes | No | No | No | No | None |
| curiousleo/twilight 31 | C++ | 2 | 2013-02-02 | Integration | No | No | No | No | Dates | No | None |
| ArctynFox/SunSketcher 33 | Java | 2 | 2025-09-01 | Not stated | No | App | Imagery | No | No | No | None |
| angristan/eclipse 19 | TypeScript | 1 | 2026-09-09 | astronomy-engine | Yes | Yes | No | No | 2023 to 2035 | few km | MIT |
| carlok/eclipse-3d-sim 21 | Python, React | 1 | 2026-07-25 | astronomy-engine | No | Yes | No | Copernicus 30 m | No | No | None |
| fizyk20/eclipse-predictor 32 | Rust | 1 | 2022-11-26 | Not stated | No | No | No | No | Dates | No | None |
| RHerAle/Eclipse-Engine 1 | JavaScript | 0 | 2026-09-14 | Own, fitted to DE440s | Yes | Yes | No | DEM plus OSM | 2026 to 2050 | Not stated | AGPL-3.0 |
| tahze0/solar-eclipse-explorer 2 | Python | 0 | 2026-09-08 | NASA CSV | Yes | No | No | No | 11,898 | 0.26 per cent width | MIT |
| aravpanwar/besselian 8 | Python | 0 | 2026-09-14 | NASA | No | Yes | No | No | No | Published values | AGPL-3.0 |
| Absolute-Eclipse/eclipse-data 9 | JavaScript | 0 | 2026-06-17 | Espenak | No | Yes | Adjustment | Elevation | 2026, 2027 | 1 to 5 s | MIT, CC-BY |
| tomasrojasc/eclipse-2026 5 | Python, TS | 0 | 2026-08-12 | Skyfield DE421 | Band | Yes | LOLA beads at 16 pixels per degree | No | 2026 only | 84 tests | None |
| johnarban/eclipse_explorer 10 | TypeScript | 0 | 2026-07-15 | NASA Canon | No | Yes | No | No | No | Tests | GPL-3.0 |
| plhery/umbra-eclipse-atlas 12 | TypeScript | 0 | 2026-09-08 | NASA Canon via library | Yes | Yes | No | Copernicus | 11,898 | Disclaimer | MIT |
| mf4633/eclipse-predictor 20 | HTML | 0 | 2026-09-08 | astronomy-engine | Yes | Yes | No | No | 1900 to 2200 | 1 to 2 km | MIT |
| RyuuNeko1107/umbra-rs 26 | Rust | 0 | 2026-09-15 | VSOP87, ELP-MPP02 | Planned | Planned | Mean | No | Planned | Not yet | Provisional |
| jpatka/Eclipse-Explorer 22 | Python | 0 | 2026-08-14 | Skyfield DE421 | No | Yes | No | No | No | No | MIT |
The five most complete
- Stellarium
SolarEclipseComputer.cpp: elements, limits, outlines, rise-set curves, contacts and maps with cited equations 34. - RHerAle/Eclipse-Engine: elements fitted to DE440s, full Besselian product set, terrain skyline, radiometry 1.
- tahze0/solar-eclipse-explorer: full 5,000-year catalogue reconstruction from the NASA CSV with a measured path-width error 2.
- tomasrojasc/eclipse-2026: the only repository that computes Baily's beads from a LOLA DEM with a lunar orientation kernel, in its case the DE421 one 5.
- Xeratec/eclipsite: local contacts from two independent methods with published residuals and a DEM skyline gate 18.
Negative findings
The thirty-repository September 2026 inventory includes no implementation deriving general northern and southern umbral limits from lunar profiles, no Watts-chart reader and no reusable general-library LOLA profile function. This scope leaves room for implementations outside the inventory and for the single-eclipse bead work listed above 7.
Sources compared
| Method family | Representative | Strength | Gap |
|---|---|---|---|
| NASA elements consumer | tahze0, aravpanwar, Absolute-Eclipse | Reproduces Espenak to seconds, cheap | Inherits NASA's , ΔT and no limb |
| Own elements from JPL kernels | Eclipse-Engine, Celestial Programming | Independent of NASA, current ephemeris | Element accuracy unverified except Miller's seven-decimal match |
| Geometric on Astronomy Engine | angristan, mf4633 | No data files, multi-language | Few-kilometre paths, mean lunar radius |
| Skyfield plus DEM or LOLA | eclipsite, eclipse-2026 | Terrain and beads, published residuals | Single-eclipse scope |
What a developer should do
Clone Stellarium sparsely (src/core, src/gui) and read SolarEclipseComputer.cpp end to end 34. Read program.js from NASA for the minimal local-circumstance loop 37. Read tomasrojasc/eclipse-2026's bead code for a worked LOLA limb construction with the correct orientation kernel 5. Use tahze0's pipeline as a template for catalogue-scale validation against the NASA CSV 2. Avoid the LLM-generated repositories for anything but ideas, since they state so themselves 23 22.
What this changes
Nothing in the stage design. The surveyed implementations do not supply a general limb-corrected path-limit library, and that LOLA-based bead prediction has a small worked precedent.
Open questions
- Obtain
data/eclipses.jsonand the fitting script from RHerAle/Eclipse-Engine and compare its 2026 elements against NASA's page 1. - Obtain tomasrojasc/eclipse-2026's limb-profile module and test it against Jubier's 2026 Baily's beads diagram for one site 5 38.
- Obtain SolarEclipseWorkbench's
lunar_limb_band_v1.binformat description 6. - Obtain the
@astronomy-bundle/solar-eclipsenpm package source to see which element set it bundles 12.
References
- 1company RHerAle/Eclipse-Engine README Author README read 2026-09-30 at commit a3aff74127bbe2a7de7cb33f30a8c92c744ab67f. Elements fitted to DE440s; Python reference chain is not in this repository. Public engine consumes the fitted elements. Cached README SHA256 ebfc38b21edc31726bbf810402756136089129f25308ab31ac79eed4f4a1d97c.
- 2company tahze0/solar-eclipse-explorer Read live. Reconstructs all 11,898 Canon eclipses from the NASA CSV; path width median error 0.26 percent; MIT; last push 2026-09-08.
- 3company Astronomy Engine source/c/astronomy.c Raw source downloaded 2026-09-15 (122 KB) and grepped. CalcShadow, GeoidIntersect, LocalEclipse, Obscuration, EclipseKindFromUmbra.
- 4company astronomia src/eclipse.js (commenthol) Read live. Meeus chapter 54 global circumstances only.
- 5company tomasrojasc/eclipse-2026 Read live. Skyfield with DE421, LOLA LDEM_16 limb profile, moon_pa_de421 orientation, Baily's beads per bead; 84 tests; no licence stated.
- 6company AstroWimSara/SolarEclipseWorkbench Read live. Astropy and IERS for ΔT, solar radius 959.95 arcsec, bundled lunar limb band file, SPICE kernels; GPL-3.0; 20 stars.
- 7unsourced GitHub repository search API queries run for this survey Queries run 2026-09-15: besselian elements; solar eclipse calculator; solar eclipse path; eclipse circumstances; solar eclipse besselian; eclipse limb profile; baily beads; eclipse explorer; solar eclipse by language (Rust, Go, Julia, Java, C++); pyeclipse; eclipsecalc; eclipse predictor; solar eclipse Python besselian OR circumstances OR contact. Metadata (stars, language, licence, last push) taken from the repos endpoint.
- 8company aravpanwar/besselian Read live. Local circumstances from NASA elements for 2027 Egypt towns; k1 = 0.272488, k2 = 0.272281, ΔT = 76.0 s; AGPL-3.0.
- 9company Absolute-Eclipse/eclipse-data Read live. Verified local circumstances for 9,438 European cities for 2026 and 2027 from Espenak elements; residuals 1 to 5 s; MIT code, CC-BY-4.0 data.
- 10company johnarban/eclipse_explorer (TypeScript port of NASA JSEX) Read live. GPL-3.0, 12 commits, SE2001 and SE2024 element files, last push 2026-07-15.
- 11company ebradyjobory/eclipse-explorer (mirror of NASA JSEX and JLEX) Read live. One commit (2010), GPL-2.0, 16 stars.
- 12company plhery/umbra-eclipse-atlas Read live. Uses @astronomy-bundle/solar-eclipse with NASA Canon elements, Copernicus DEM skyline; MIT.
- 13company gmiller123456/FiveMillenniumCanonOfSolarEclipses-Besselian-Elements Read live. Repackaging of the NASA Besselian elements as CSV, JS and JSON; 3 stars; last push 2023-03-10.
- 14trade Celestial Programming: Computing Besselian Element Polynomial Coefficients Read live. DE405 extract, formulas for x, y, z, mu, k = 0.2725076, solar radius 6.957e8 m, five-point cubic fit, agreement with Espenak to about seven decimals.
- 15trade Celestial Programming: Solar Eclipse Predictions Using Besselian Elements Read live. Work in progress; cites Explanatory Supplement, Meeus, Chauvenet, Green, Smart; code in the Eclipse Map.
- 16trade Celestial Programming (Greg Miller) home page Read live. Lists the eclipse map, Besselian polynomial generator and prediction articles.
- 17company Frencil/eclipsetracks (EclipseTracks.org) Read live. Scrapes NASA path tables into CZML for Cesium; does not compute the umbra; Apache-2.0; 31 stars.
- 18company Xeratec/eclipsite Read live. Skyfield DE421 plus NASA Besselian cross-check (0.36 s mean difference), EU-DEM 25 m skyline, RMS 0.60 s against IGN durations; MIT.
- 19company angristan/eclipse (interactive eclipse map) Read live. astronomy-engine based, WGS84 axis intersection, accuracy a few kilometres; MIT; last push 2026-09-09.
- 20company mf4633/eclipse-predictor Read live. Single HTML file, astronomy-engine plus Besselian tracing, claims 1 to 2 km path accuracy; MIT.
- 21company carlok/eclipse-3d-sim Read live. Astronomy Engine circumstances plus DEM ray-casting (Copernicus 30 m via OpenTopography); no licence stated.
- 22company jpatka/Eclipse-Explorer Read live. Skyfield DE421, refraction; no validation; MIT.
- 23company pmisson/pyeclipsesimulator Read live. Astropy based, refraction libraries, compared against Jubier to within seconds; MIT; largely generated by an LLM.
- 24unsourced sPaMFouR/SolarEclipse Read live. Astropy and astroplan notebook, under development, no method documented.
- 25company i230010/sedategenerator_v2 Read live. Produces polynomial Besselian elements and ΔT in CSV; ephemeris source not documented; MIT.
- 26unsourced RyuuNeko1107/umbra-rs Read live. Experimental Rust engine, VSOP87 and ELP-MPP02, mean limb, declared not ready for use; last push 2026-09-15.
- 27company johanley/custom-solar-eclipse-viewer (Java) and its documentation page Read live. Cites Meeus Elements of Solar Eclipses (1989) and the 1961 Explanatory Supplement; Java; no licence stated.
- 28company Starainrt/astro (Go astronomy library) README Read live. VSOP87 and ELP2000/82 built in, Meeus-based, central path and footprints, Apache-2.0, 157 stars.
- 29company soniakeys/meeus eclipse package (Go) Read live. Solar(year) and Lunar(year) return type, central flag, jmax, gamma, magnitude.
- 30company andrmoel/astronomy-bundle README Read live. PHP library with local circumstances C1 to C4 from VSOP87 and Meeus; MIT.
- 31unsourced curiousleo/twilight Read live. Numerical integration of Sun, Earth and Moon with geometric eclipse test; C++; 2013.
- 32unsourced fizyk20/eclipse-predictor Read live. Rust, 8 commits, no README detail.
- 33company ArctynFox/SunSketcher Read live. NASA-partnered Android app for Baily's beads imagery; README has build instructions only.
- 34company Stellarium src/core/SolarEclipseComputer.cpp Source read at pinned commit 69888f4f47af2aa4d1c9d14ec3853e874e253c73. SHA256 6ea4ddfac3c2fc921adcb75c06fd6c0062d6e7716ce566c15976c16b2020cbd5. Lines 584-587 use a small-separation angular axis approximation; global limits and observer transformations inspected. Verified 2026-09-30.
- 35company Astronomy Engine (cosinekitty/astronomy) README Read live. MIT, C, C#, JS, Python, Kotlin; 1 arcminute accuracy claim against NOVAS; predicts lunar and solar eclipses.
- 36company Swiss Ephemeris swecl.c (eclipse routines) Read from a depth-1 clone at commit 9083a12 (2026-09-14), SE_VERSION 2.10.03. Functions eclipse_where, eclipse_how, eclipse_when_loc and their constants and comments.
- 37primary JSEX program.js (JavaScript source of the Solar Eclipse Explorer) Source read in full (36.8 KB, downloaded 2026-09-15). GPL v2+. Contains the local-circumstance algorithm, the observer geocentric constants and the crude refraction handling.
- 38company Jubier: EclipseCalculatorGM3_xSE.js (Solar Eclipse Calculator for Google Maps v3) Source read (198 KB, downloaded 2026-09-15). Change log 2007 to 2016, constants, k1/k2 ratio, Watts and Kaguya limb correction hooks, refraction and elevation handling.