jayeshmepani / panchang-core
Authentic Vedic Panchanga calculation engine powered by the JPL Moshier Ephemeris FFI wrapper
Requires
- php: >=8.3
- jayeshmepani/jpl-moshier-ephemeris-php: ^2.0.0
- nesbot/carbon: ^3.0
- spatie/fork: ^1.2
Requires (Dev)
- laravel/pint: ^1.29
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.9
- orchestra/testbench: ^10.0
- phpstan/extension-installer: ^1.4
- phpstan/phpstan: ^2.1
- phpstan/phpstan-deprecation-rules: ^2.0
- phpstan/phpstan-mockery: ^2.0
- phpstan/phpstan-strict-rules: ^2.0
- phpunit/phpunit: ^11.5
- rector/rector: ^2.4
Suggests
None
Provides
None
Conflicts
- php: <8.3
Replaces
None
- dev-main
- 11.6.0
- 11.5.1
- 11.5.0
- 11.4.1
- 11.4.0
- 11.3.0
- 11.2.0
- 11.1.0
- 11.0.0
- 10.9.0
- 10.8.2
- 10.8.1
- 10.8.0
- 10.7.0
- 10.6.0
- 10.5.1
- 10.5.0
- 10.4.1
- 10.4.0
- 10.3.1
- 10.3.0
- 10.2.0
- 10.1.0
- 10.0.8
- 10.0.7
- 10.0.6
- 10.0.5
- 10.0.4
- 10.0.3
- 10.0.2
- 10.0.1
- 10.0.0
- 9.8.0
- 9.7.0
- 9.6.0
- 9.5.0
- 9.4.0
- 9.3.0
- 9.2.0
- 9.1.0
- 9.0.0
- 8.4.0
- 8.3.0
- 8.2.1
- 8.2.0
- 8.1.0
- 8.0.0
- 7.0.2
- 7.0.1
- 7.0.0
- 6.0.2
- 6.0.1
- 6.0.0
- 5.0.0
- 4.1.1
- 4.1.0
- 4.0.0
- 3.0.0
- 2.0.1
- 2.0.0
- 1.2.0
- 1.1.0
- 1.0.0
This package is auto-updated.
Last update: 2026-10-21 10:59:41 UTC
README
High-precision Hindu Panchang calculation engine for PHP 8.3+, powered by the JPL Moshier Ephemeris FFI wrapper.
It calculates Panchanga limbs, festivals, Muhurta windows, Karmakala timings, Chogadiya, Hora, Lagna tables, direction/Vaasa checks, eclipse visibility, and localized JSON outputs.
Install
composer require jayeshmepani/panchang-core
Requirements:
- PHP 8.3+
- PHP FFI extension enabled
jayeshmepani/jpl-moshier-ephemeris-php2.0.0 or later in the 2.x seriesnesbot/carbon
Enable FFI in php.ini:
extension=ffi ffi.enable=1
Quick Usage
<?php require 'vendor/autoload.php'; use Carbon\CarbonImmutable; use JayeshMepani\PanchangCore\Traits\CliBootstrap; CliBootstrap::init(__DIR__); $panchang = CliBootstrap::makePanchangService(); $details = $panchang->getDayDetails( date: CarbonImmutable::parse('2026-05-29'), lat: 23.2472446, lon: 69.668339, tz: 'Asia/Kolkata' ); echo $details['Current_Tithi_At_Input_Now']['name'] . PHP_EOL; echo $details['Tithi_At_Sunrise']['name'] . PHP_EOL; echo $details['Current_Karana_At_Input_Now']['name'] . PHP_EOL; echo $details['Nakshatra']['name'] . PHP_EOL;
Laravel facade usage:
use Carbon\CarbonImmutable; use JayeshMepani\PanchangCore\Facades\Panchang; $details = Panchang::getDayDetails( date: CarbonImmutable::parse('2026-05-29'), lat: 23.2472446, lon: 69.668339, tz: 'Asia/Kolkata' ); $festivals = $details['Festivals'];
Documentation
Full documentation, including output semantics, configuration, Bārhaspatya Saṃvatsara models, Ṣaṇṇavati Śrāddha, CLI exporters, and release notes: docs/index.html
- Coverage matrix: PACKAGE_COVERAGE.md
- Traditional source attribution: docs/TRADITIONAL_TEXT_SOURCES.md
- Muhurta text source classification: docs/MUHURTA_TEXT_SOURCES.md
- Festival and vrat identity catalog: docs/FESTIVAL_VRAT_IDENTITIES.md
License
MIT. See LICENSE.
The dependency jpl-moshier-ephemeris-php ships native runtime binaries under MIT AND CeCILL-B (CALCEPH); if you redistribute those binaries, keep that package's LICENSE, LICENSES/ and THIRD_PARTY_NOTICES.md.
Credits
Built by Jayesh Mepani (Jayesh Patel). Astronomy runs on JPL Moshier Ephemeris (JME); full third-party credits: JME THIRD_PARTY_NOTICES.md.