Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Dec 20, 2025. It is now read-only.

itzwaris/yaegi

Repository files navigation

๐ŸŒŒ Yaegi โ€“ Vedic Astrology Library

A modern Python library for Vedic Astrology (Jyotish) โ€“ Accurate astronomy, Kundali generation, Panchang, Dashas & compatibility, all in one.

[๐Ÿ“– Docs] [โœจ Contribution] [โฌ‡๏ธ PyPI]


Note

Yaegi brings together classical Vedic astrology principles with modern Python development, making Kundali, Panchang, Dasha, and Yogas accessible via code or CLI.

Warning

This project is a calculation engine, not a substitute for professional astrological guidance.


โœจ Highlights

  • ๐Ÿช Astronomical Calculations โ€“ Planetary positions, ascendant, house systems
  • ๐Ÿ”ฎ Kundali Generation โ€“ D1 Lagna, divisional charts (Navamsa, Dashamsa, D60)
  • ๐Ÿ“… Panchang โ€“ Tithi, Nakshatra, Yoga, Karana
  • ๐Ÿ“Š Dasha Systems โ€“ Vimshottari with Mahadasha & Antardasha
  • ๐Ÿงฉ Yoga Detection โ€“ Raj Yogas, Dhan Yogas, Panch Mahapurush Yogas
  • โค๏ธ Compatibility โ€“ Full 36-point Guna Milan with recommendations
  • โšก CLI & API โ€“ Use in scripts or command line
  • ๐Ÿ“ Output Formats โ€“ JSON, dict, formatted text

๐Ÿš€ Quick Start

pip install yaegi

Kundali Example

from yaegi import KundaliGenerator
from datetime import datetime
generator = KundaliGenerator()
chart = generator.generate_chart(
 birth_date=datetime(1990, 5, 15, 14, 30),
 latitude=28.6139, longitude=77.2090, timezone="Asia/Kolkata"
)
for planet in chart.planets:
 print(f"{planet.name}: {planet.dms} in House {planet.house}")

Panchang Example

from yaegi import PanchangGenerator
panchang = PanchangGenerator().generate_panchang(datetime(2024, 1, 15), 28.6139, 77.2090)
print(f"Tithi: {panchang['tithi']['name']}")

๐Ÿงฎ CLI Usage

yaegi kundali --date 1990ๅนด05ๆœˆ15ๆ—ฅ --time 14:30 --latitude 28.61 --longitude 77.21
yaegi panchang --date 2024ๅนด01ๆœˆ15ๆ—ฅ --latitude 28.61 --longitude 77.21
yaegi dasha --date 1990ๅนด05ๆœˆ15ๆ—ฅ --time 14:30 --latitude 28.61 --longitude 77.21

๐Ÿ“Œ Advanced Features

  • Custom Ayanamsa (LAHIRI, etc.)
  • Divisional charts (D9 Navamsa, D10 Dashamsa, ...)
  • Planetary strengths & aspect calculations
  • Configurable outputs (localization, caching, formats)

๐Ÿ› ๏ธ Development

git clone https://github.com/notwaris/yaegi
cd yaegi
pip install -e .

Tip

Start with the CLI for quick results, then move to the Python API for advanced workflows.


โœ… Roadmap (Current Status)

  • Kundali generation (D1, D9, D10, D60)
  • Panchang with Tithi, Nakshatra, Yoga
  • Vimshottari Dasha calculation
  • Compatibility analysis (Guna Milan)
  • Other Dasha systems (future)
  • Enhanced Yoga library

๐Ÿค Contributing

We welcome contributions of all kinds โ€“ calculations, translations, docs, tests.
๐Ÿ‘‰ See CONTRIBUTING.md


๐Ÿ“œ License

MIT License โ€“ see LICENSE.


๐Ÿ™ Acknowledgments

  • Classical Jyotish principles
  • Swiss Ephemeris for astronomical accuracy
  • Python astronomy & astrology community

โญ Star us on GitHub if you like the project!

About

Yaegi Ancient Wisdom, Modern Code

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

Contributors

Languages

AltStyle ใซใ‚ˆใฃใฆๅค‰ๆ›ใ•ใ‚ŒใŸใƒšใƒผใ‚ธ (->ใ‚ชใƒชใ‚ธใƒŠใƒซ) /