- add external validation reports and open-source comparison references - integrate Jaimini arudha/graha pada, enhanced argala, and additional synastry kutas - update skill docs and capability matrices - add smoke tests for open-source integrations
16 KiB
Jyotish开源项目全网扫描 (2026-06)
扫描日期:2026-06-10 | 扫描范围:GitHub, PyPI, npm | 重点:Python项目,次选Node.js/Rust/Java
⭐⭐⭐ 强烈推荐(可直接复用代码)
MIT/Apache-2.0许可证项目,代码可直接复制使用。
| 项目 | ⭐ | 许可证 | 最后更新 | 语言 | 可复用核心模块 |
|---|---|---|---|---|---|
| dashaflow | 1 | MIT | 2026-04-08 | Python | Ashtakavarga(SAV/BAV/Prashtara), Shadbala, D2-D60(14种), Jaimini(Karakas/Arudha/Karakamsha), 24 Yogas, Synastry(16因子), Muhurtha, Transit(Sade Sati), Panchang, Vimshottari 5层, Career分析 |
| jyotishganit | 32 | MIT | 2026-05-30 | Python | D1-D60全部分盘, Shadbala完整六维, Ashtakavarga(SAV/BAV), Vimshottari Dasha, Panchang, Graha Drishti, Planetary Dignities, JSON-LD输出 |
| panchanga_api | 2 | MIT | 2026-03-16 | Python | KP System(249 sublords), 300+ Yogas, Ashtakavarga, Tajika/Varshaphala(含Muntha/Tajika Yogas), Prashna卜卦, Muhurta择时, Remedies(宝石/咒语/仪式), Shadbala, D1-D60(20种), Synastry, Transit, Panchang, Vimshottari Dasha, Choghadiya/Hora, Pancha Pakshi |
| jaimini-tropical | 0 | MIT | 2026-05-28 | Python | Jaimini完整引擎: Chara Karaka(7/8星), Arudha Padas(A1-A12+Upapada), Argala(正向/反向/分类), Chara Dasha(含Antar), Special Lagnas(HL/GL/VL), Jaimini D-9/D-3/D-12 |
| VedicAstro | 63 | MIT | 活跃 | Python | KP System(249 sublords/sub-sublords), Prashna/Horary完整(horary_chart.py), Significators(ABCD法), Vimshottari Dasha, Planetary Aspects |
| KPAstroDashboard | 3 | MIT | 2025-06-13 | Python | KP卜卦引擎(horary chart generation), Sublord高精度计算, 多种Ayanamsa, Swiss Ephemeris集成 |
| vedic_astro_npm | 1 | MIT | 2025 | TypeScript | Panchang(Tithi/Nakshatra/Yoga/Karana), Gun Milan(Ashtakoota 36分), Kundali(D1), Daily Transit/Gochar, 纯JS天文计算 |
URL列表
| 项目 | GitHub URL | PyPI/npm |
|---|---|---|
| dashaflow | https://github.com/adarshj322/dashaflow | pip install dashaflow |
| jyotishganit | https://github.com/northtara/jyotishganit | pip install jyotishganit |
| panchanga_api | https://github.com/degen0root/panchanga_api | MCP Server |
| jaimini-tropical | https://github.com/tunanfang-pixel/jaimini-tropical | 本地安装 |
| VedicAstro | https://github.com/diliprk/VedicAstro | pip install VedicAstro |
| KPAstroDashboard | https://github.com/manan-ramnani/KPAstroDashboard | 本地安装 |
| vedic_astro_npm | https://github.com/arpitasah00/vedic_astro_npm | npm install vedic_astro_npm |
⭐⭐ 推荐(可借鉴思路,GPL/AGPL许可证)
源码可参考但不能直接复制,算法思路可翻译实现。
| 项目 | ⭐ | 许可证 | 最后更新 | 语言 | 核心价值 |
|---|---|---|---|---|---|
| vedic-calc | - | AGPL-3.0 | 2026-03 | Python | 最全面AGPL项目: Ashtakavarga, Tajika(Ithasala/Easarapha/Induvara/Kamboola/Nakta), KP(249 sublord), Jaimini(Chara Karaka/Arudha Padas), Prashna(含裁决引擎), Muhurta(5层Panchang过滤求解器), Yoga(20+), Synastry(Ashtakoot+Porutham), Transit, D1-D60, Shadbala, Panchang, Nakshatra, Remedies, Dasha(4种: Vimshottari/Yogini/Ashtottari/Narayana) |
| PyJHora | ~500+ | AGPL | 2026-05-30 | Python | 最全面Python库: D1-D300全部分盘, 47种Dasha系统, 100+ Yogas, Synastry, Transit, 8种Dosha, Panchang, 多语言UI, ~6800单元测试 |
| VedAstro (主项目) | 563 | MIT(C#) | 活跃 | C#/.NET | Prashna卜卦, Muhurta择时, Gochara行运(含Vedha), Dasha(5层), Matchmaking(10 Kuta), AI Astrologer, 出生时间校正 |
| xalen-ephemeris | 405 | Apache-2.0 | 2026-06 | Rust | 下一代星历引擎: Dasha, Shadbala, 16 Vargas, KP, Jaimini, Tajika, Ashtakavarga, 50种Ayanamsa, 23种宫位系统, JPL精度 |
URL列表
| 项目 | URL |
|---|---|
| vedic-calc | https://atolat.github.io/vedic-calc/ (PyPI: pip install vedic-calc) |
| PyJHora | https://github.com/naturalstupid/PyJHora (pip install PyJHora) |
| VedAstro | https://github.com/VedAstro/VedAstro |
| xalen-ephemeris | https://github.com/vedika-io/xalen-ephemeris |
新发现项目(2024-2026)
近两年涌现的高质量新项目。
| 项目 | 发现时间 | ⭐ | 许可证 | 语言 | 亮点 |
|---|---|---|---|---|---|
| jaimini-tropical | 2026-05 | 0 | MIT | Python | 首个热带黄道Jaimini引擎, 基于Rangacharya原著 |
| dashaflow | 2026-04 | 1 | MIT | Python | 最全面的MIT Python库, 覆盖几乎所有技法 |
| jyotishganit | 2025-10 | 32 | MIT | Python | 专业级, D1-D60+Shadbala+Ashtakavarga |
| panchanga_api | 2026-03 | 2 | MIT | Python | 唯一同时实现Tajika+KP+Prashna+Remedies的MIT项目 |
| vedic-calc | 2026-03 | - | AGPL | Python | 算法最完整, Tajika/Muhurta/Prashna裁决引擎 |
| vedic-transit-calculator | 2025-12 | - | - | Python | 专用行运计算工具 |
| KPAstroDashboard | 2025-06 | 3 | MIT | Python | KP卜卦专用工具 |
| vedic_astro_npm | 2025-12 | 1 | MIT | TypeScript | 纯JS天文计算, 零依赖 |
| astrokundali | 2026-01 | - | MIT | Python | D1-D60分盘, 北印度图, 婚配 |
| xalen-ephemeris | 2024 | 405 | Apache-2.0 | Rust | 纯Rust星历, 所有Jyotish功能 |
| vedic-panchang | 2026-02 | - | - | Python | 专用Panchang库, Swiss Ephemeris |
| PanchangaAPI (MCP) | 2025 | - | - | Python | MCP协议, 300+Yogas+KP+Ashtakavarga |
各技法最佳代码来源
按技法逐一列出最佳开源实现。
1. Ashtakavarga(八宫分盘点数系统)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| dashaflow ⭐ | MIT | SAV, BAV, Prashtara(源级bindu) | dashaflow/ashtakavarga.py |
| jyotishganit | MIT | SAV, BAV(按星座分布) | jyotishganit/ |
| panchanga_api | MIT | SAV完整 | chart.kundali |
| vedic-calc | AGPL | 8源bindu系统, SAV综合 | 借鉴思路 |
| PyJHora | AGPL | 完整Ashtakavarga | 借鉴思路 |
2. Tajika / Varshaphala(年度盘/太阳回归)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| panchanga_api ⭐ | MIT | Varshaphal(Muntha/Year Lord), Tajika Yogas完整 | prediction.varshaphal |
| vedic-calc | AGPL | Ithasala/Easarapha/Induvara/Kamboola/Nakta, Varshaphal | 借鉴思路 |
| xalen-ephemeris | Apache-2.0 | Tajika系统(纯Rust,需翻译) | 借鉴思路 |
3. KP System(Krishnamurti Paddhati)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| panchanga_api ⭐ | MIT | Sub-lords, Significators, Cuspal分析 | analysis.kp_system |
| VedicAstro ⭐ | MIT | 249 sublord/sub-sublord, Significators(ABCD), Prashna | VedicHoroscopeData类 |
| KPAstroDashboard ⭐ | MIT | 卜卦引擎, Sublord高精度, KP_SL_Divisions.csv | main.py |
| vedic-calc | AGPL | KP盘(Placidus宫头+sign/star/sub lord), 249 sublord表 | 借鉴思路 |
| xalen-ephemeris | Apache-2.0 | KP体系(纯Rust) | 借鉴思路 |
4. Jaimini完整实现
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| jaimini-tropical ⭐⭐⭐ | MIT | Chara Karaka(7/8星), Arudha Padas(A1-A12+Upapada), Argala(正向/反向/王瑜伽分类), Chara Dasha(含Antar), Special Lagnas(HL/GL/VL), Jaimini D-9/D-3/D-12, Karakamsa Rajayoga | jaimini/core/ |
| dashaflow ⭐ | MIT | 7 Karakas, Arudha Padas(A1-A12含例外规则), Upapada(A12), Karakamsha(AK in Navamsha, Ishta Devata) | dashaflow/jaimini.py |
| vedic-calc | AGPL | Chara Karakas, Arudha Padas | 借鉴思路 |
| PyJHora | AGPL | Jaimini完整系统 | 借鉴思路 |
5. Prashna(问卦占星)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| panchanga_api ⭐ | MIT | Horary征象星, 指示评分 | prediction.prashna |
| VedicAstro ⭐ | MIT | 完整卜卦(horary_chart.py: get_horary_ascendant_degree, find_exact_ascendant_time) |
horary_chart.py |
| KPAstroDashboard ⭐ | MIT | KP卜卦引擎, 卜卦数字计算 | main.py |
| vedic-calc | AGPL | Prashna盘+Tajika瑜伽+裁决引擎(吉/凶/混合判定+推理) | 借鉴思路 |
| VedAstro (C#) | MIT(C#) | Prashna问卦 | 借鉴思路 |
6. Muhurta(择日占星)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| panchanga_api ⭐ | MIT | 排名吉祥时间窗口, 质量评分, 婚礼/商业/旅行等 | analysis.muhurta |
| dashaflow ⭐ | MIT | 6种活动类型, Panchang Suddhi, 婚姻Dosha检测 | dashaflow/muhurtha.py |
| vedic-calc | AGPL | Muhurta求解器(日期范围+5层Panchang过滤+Chandrabala/Tarabala个人覆盖) | 借鉴思路 |
| VedAstro (C#) | MIT(C#) | Muhurta择时 | 借鉴思路 |
7. Yoga识别器(300+ Yogas)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| panchanga_api ⭐ | MIT | 300+ Yogas完整识别 | chart.kundali |
| dashaflow ⭐ | MIT | 24种Yoga(Pancha Mahapurusha, Gajakesari, Budhaditya, Raj, Neecha Bhanga, Parivartana, Dhana等) | dashaflow/yoga.py |
| PyJHora | AGPL | 100+ Yogas | 借鉴思路 |
| vedic-calc | AGPL | 20+ Yogas含Viparita Raja, Saraswati, Kemadruma | 借鉴思路 |
8. Synastry / 婚配分析
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| dashaflow ⭐ | MIT | 16因子匹配(Ashtakoot 36分+Mahendra/Stree Deergha/Vedha/Rajju), Kuja Dosha | dashaflow/matchmaking.py |
| panchanga_api ⭐ | MIT | Ashtakoot 8重匹配(36分制) | analysis.compatibility |
| vedic-calc | AGPL | Ashtakoot(Porutham 10因素)+北印度8因素 | 借鉴思路 |
| PyJHora | AGPL | 完整MatchWidget界面 | 借鉴思路 |
| astrokundali | MIT | Kundli Milan, Pandas输出 | astrokundali |
9. Transit分析(Gochar)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| dashaflow ⭐ | MIT | 行运盘叠加本命, SAV点, Sade Sati检测, Rahu-Ketu轴 | dashaflow/vedic_calculator.py (cast_transit) |
| panchanga_api ⭐ | MIT | 行星行运相对出生月亮, Sade Sati检测 | prediction.transits |
| vedic-calc | AGPL | 当前天空叠加本命 | 借鉴思路 |
| vedic-transit-calculator | - | 终端工具, Swiss Ephemeris | 借鉴思路 |
10. D1-D60全部分盘图
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| jyotishganit ⭐ | MIT | D1-D60全13种(含D60 Shashtiamsha) | jyotishganit/ |
| dashaflow ⭐ | MIT | D2-D60共14种(每个行星返回所有分盘星座) | dashaflow/vedic_calculator.py |
| panchanga_api ⭐ | MIT | D1-D60共20种分盘 | chart.vargas |
| PyJHora | AGPL | D1-D300全部分盘 | 借鉴思路 |
| vedic-calc | AGPL | D1-D60全部 | 借鉴思路 |
11. Shadbala完整六维计算
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| jyotishganit ⭐ | MIT | Sthana/Kala/Dig/Chesta/Naisargika/Drik Bala + 总力量Rupas换算 | jyotishganit/ |
| dashaflow ⭐ | MIT | 六重力量(Rupas+百分比), Ishta/Kashta Phala | dashaflow/shadbala.py |
| panchanga_api | MIT | 六重力量含分解 | analysis.shadbala |
| vedic-calc | AGPL | 六维完整 | 借鉴思路 |
12. Panchang(五要素日历)
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| dashaflow ⭐ | MIT | Tithi, Vara, Nakshatra, Yoga, Karana | dashaflow/panchang.py |
| jyotishganit ⭐ | MIT | 完整五要素 | jyotishganit/ |
| panchanga_api ⭐ | MIT | 完整Panchanga+Rahu Kalam+Yamaganda+Gulika, Panchanga组合搜索, 多日范围查询, Vrata斋戒日历, 50+节日 | chart.panchanga |
| vedic-calc | AGPL | 五要素+日出日落+节日 | 借鉴思路 |
| vedic-panchang | - | 专用Panchang, JPL DE431 | PyPI |
| vedic_astro_npm | MIT | Panchang+吉时/凶时窗口 | TypeScript可翻译 |
13. Nakshatra详细分析
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| dashaflow ⭐ | MIT | Nakshatra+Pada查找 | dashaflow/nakshatra.py |
| jyotishganit ⭐ | MIT | Nakshatra完整(含Yogatara) | jyotishganit/ |
| vedic-calc | AGPL | Nakshatra+Pada | 借鉴思路 |
| xalen-ephemeris | Apache-2.0 | Nakshatra+Pada+Yogatara星表 | 借鉴思路 |
14. Remedies推荐系统
| 来源 | 许可证 | 实现内容 | 文件路径 |
|---|---|---|---|
| panchanga_api ⭐ | MIT | 唯一MIT实现: 个性化宝石/咒语/仪式推荐, 基于个人星盘 | analysis.remedies |
| vedic-calc | AGPL | Dosha附带remedies(严重等级+化解方法) | 借鉴思路 |
最佳复用策略
第一优先级:直接复用(MIT/Apache-2.0)
按模块选取最佳MIT代码:
Ashtakavarga → dashaflow/ashtakavarga.py (含Prashtara)
Shadbala → dashaflow/shadbala.py + jyotishganit (互补)
Jaimini → jaimini-tropical/jaimini/core/ (最完整)
KP System → VedicAstro + panchanga_api/kp_system
Yoga识别 → panchanga_api (300+) + dashaflow/yoga.py
Synastry → dashaflow/matchmaking.py (16因子)
Transit → dashaflow (Sade Sati + SAV点)
Muhurta → dashaflow/muhurtha.py + panchanga_api/muhurta
Tajika → panchanga_api/varshaphal (唯一MIT)
Prashna → panchanga_api/prashna + VedicAstro/horary_chart.py
Remedies → panchanga_api/remedies (唯一MIT)
D1-D60分盘 → jyotishganit (最完整) + dashaflow
Panchang → dashaflow/panchang.py + panchanga_api (含搜索)
Nakshatra → dashaflow/nakshatra.py
第二优先级:翻译借鉴(AGPL项目算法思路)
vedic-calc → Tajika裁决引擎, Muhurta求解器, Prashna裁决引擎 (算法可翻译)
PyJHora → Dasha系统(47种), Yoga(100+), Dosha(8种) (算法可翻译)
第三优先级:跨语言参考
VedAstro (C#) → Prashna/Muhurta/Gochara预测逻辑 (翻译为Python)
xalen (Rust) → 所有技法的高精度算法参考 (Apache-2.0, 可安全参考)
项目对比矩阵(核心技法覆盖)
| 技法 | dashaflow | jyotishganit | panchanga_api | jaimini-tropical | VedicAstro | vedic-calc | PyJHora |
|---|---|---|---|---|---|---|---|
| Ashtakavarga | ✅ | ✅ | ✅ | ❌ | ⚠️ | ✅ | ✅ |
| Tajika/Varshaphala | ❌ | ❌ | ✅ | ❌ | ❌ | ✅ | ⚠️ |
| KP System | ❌ | ❌ | ✅ | ❌ | ✅ | ✅ | ⚠️ |
| Jaimini | ✅ | ❌ | ❌ | ✅✅✅ | ❌ | ✅ | ✅ |
| Prashna | ❌ | ❌ | ✅ | ❌ | ✅ | ✅ | ⚠️ |
| Muhurta | ✅ | ❌ | ✅ | ❌ | ❌ | ✅✅ | ⚠️ |
| Yoga识别 | ✅(24) | ❌ | ✅(300+) | ❌ | ⚠️ | ✅(20+) | ✅(100+) |
| Synastry | ✅(16) | ❌ | ✅ | ❌ | ❌ | ✅(2系统) | ✅ |
| Transit | ✅(SS+SAV) | ❌ | ✅(SS) | ❌ | ❌ | ✅ | ✅ |
| D1-D60 | ✅(14) | ✅(13) | ✅(20) | D9/3/12 | 部分 | ✅ | ✅(300) |
| Shadbala | ✅(含IKP) | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ |
| Panchang | ✅ | ✅ | ✅✅ | ❌ | ❌ | ✅ | ✅ |
| Nakshatra | ✅ | ✅ | ✅ | ❌ | 基础 | ✅ | ✅ |
| Remedies | ❌ | ❌ | ✅ | ❌ | ❌ | ✅ | ⚠️ |
| Dasha(数量) | 1 | 1 | 1 | 1(Chara) | 1 | 4 | 47 |
| 许可证 | MIT | MIT | MIT | MIT | MIT | AGPL | AGPL |
图例: ✅✅=最佳实现 ✅=完整实现 ⚠️=部分/计划中 ❌=未实现
关键结论
-
最佳MIT全栈库: dashaflow — 覆盖面最广的MIT Python库,实现了除Tajika、KP外的几乎所有核心技法。代码质量好,模块化清晰。
-
最佳基础计算库: jyotishganit — D1-D60分盘、Shadbala、Ashtakavarga核心计算精度最高,代码质量优秀(pytest/ruff/mypy)。
-
最佳Jaimini实现: jaimini-tropical — 虽然只有5次提交且0星,但实现了最完整的Jaimini系统(Argala/Arudha/Chara Dasha/Special Lagnas),而且是唯一的热带黄道实现。
-
填补关键技术空白: panchanga_api 是唯一同时以MIT许可证实现Tajika、KP、Prashna、Remedies的项目。
-
最佳算法参考: vedic-calc (AGPL) — 虽然不能直接复制代码,但其Tajika裁决引擎和Muhurta求解器的算法设计值得仔细研究。
-
AGPL vs MIT策略: 对于MIT项目直接复制代码;对于AGPL项目(PyJHora, vedic-calc)仅借鉴算法思路,用Python独立重新实现。
扫描完成: 共发现18个项目,其中7个MIT/Apache可直接复用,4个AGPL/GPL可借鉴思路。