Skip to main content

Bindings to the zmanim-core rust library

Project description

Zmanim Core Python Bindings

PyPI Version Python Versions License

High-performance Python bindings for the Zmanim Core library - a comprehensive solution for calculating Jewish religious times (zmanim) and astronomical events.

🌟 Features

  • Astronomical Calculations: Precise sunrise, sunset, and astronomical event calculations
  • Jewish Religious Times: Complete zmanim calculations including:
    • Alos Hashachar (dawn)
    • Tzais (nightfall)
    • Chatzos (midday)
    • Prayer times (Shacharis, Mincha, Maariv)
    • Candle lighting times
  • Hebrew Calendar: Full Jewish calendar support with:
    • Date conversions between Gregorian and Jewish dates
    • Holiday calculations
    • Parsha (weekly Torah portion) information
    • Daf Yomi calculations
  • Geolocation Support: Location-based calculations using coordinates
  • High Performance: Optimized Rust implementation with minimal overhead
  • Cross-Platform: Supports Windows, Linux, macOS

🚀 Installation

From PyPI (Recommended)

pip install zmanim-core-bindings

📖 Quick Start

Basic Usage

import zmanim_py.zmanim_core as zmanim
from datetime import datetime
import time

# Get current timestamp (milliseconds since epoch)
now = int(time.time() * 1000)

# Create a location (Jerusalem coordinates)
location = zmanim.new_geolocation(
    latitude=31.78,    # Jerusalem latitude
    longitude=35.22,   # Jerusalem longitude
    elevation=754.0    # Elevation in meters
)

# Create a zmanim calendar
calendar = zmanim.new_zmanim_calendar(
    timestamp=now,
    geo_location=location,
    use_astronomical_chatzos=True,
    use_astronomical_chatzos_for_other_zmanim=True,
    candle_lighting_offset=18 * 60 * 1000  # 18 minutes before sunset
)

# Get Alos Hashachar (dawn)
alos_timestamp = calendar.get_alos_hashachar()
if alos_timestamp:
    alos_datetime = datetime.fromtimestamp(alos_timestamp / 1000)
    print(f"Alos Hashachar: {alos_datetime}")
    # Note: This is in UTC, convert to local timezone as needed

For more information, see the Rust API Docs and the original KosherJava docs which this library is based on.

📄 License

This project is licensed under the Lesser General Public License v2.1 - see the LICENSE file for details.

🙏 Acknowledgments

This library is a Rust port of the KosherJava library, which provides the reference implementation and testing framework. Special thanks to the KosherJava contributors for their excellent work.

📞 Support


Made with ❤️ for the Jewish community and Python developers

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zmanim_core_bindings-0.2.6.tar.gz (752.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

zmanim_core_bindings-0.2.6-py3-none-win_amd64.whl (394.4 kB view details)

Uploaded Python 3Windows x86-64

zmanim_core_bindings-0.2.6-py3-none-win32.whl (337.5 kB view details)

Uploaded Python 3Windows x86

zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_x86_64.whl (555.5 kB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_i686.whl (575.6 kB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_armv7l.whl (621.9 kB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_aarch64.whl (535.4 kB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (393.3 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (407.0 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (421.9 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (362.5 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (372.1 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

zmanim_core_bindings-0.2.6-py3-none-macosx_11_0_arm64.whl (368.5 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

zmanim_core_bindings-0.2.6-py3-none-macosx_10_12_x86_64.whl (393.4 kB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file zmanim_core_bindings-0.2.6.tar.gz.

File metadata

  • Download URL: zmanim_core_bindings-0.2.6.tar.gz
  • Upload date:
  • Size: 752.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: maturin/1.9.6

File hashes

Hashes for zmanim_core_bindings-0.2.6.tar.gz
Algorithm Hash digest
SHA256 b0d024c930ca8d8aceb8580177e643c85e7f1d8c2e9bced8d6a0685d9e791e9a
MD5 ac59d7a1cf9b72214d92d57a94e19d4e
BLAKE2b-256 588efc41220fc57fb292ca6130693bbfd11e1c42baff02e968990c74ac3b5e76

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 c02df1aabb281c7c56c19147f7a238b9bc9e47c16459fe554f66d6ce02a997e6
MD5 b6e1b7b14b189d7396fbae80e0beba35
BLAKE2b-256 b02b00e9bb90518aef3af2fd54e0cb77abb89e47ae75b0572b9dfd328293f8f5

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-win32.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-win32.whl
Algorithm Hash digest
SHA256 2b43749e7f57d902ddcdb5c5f694720d38f7e399be7604bc5e1b7e1736b3d185
MD5 bf9560fbb4c1a6ece63af1435c4ac44c
BLAKE2b-256 df61be810731ac1e848e7ba6d9fc1b5eb3569a37689d3c89daa7b687554880f3

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2d3c19492bf059ef44d7b45f0476d1586852605f53a71831f64b952e66850fd6
MD5 da0f39f59cc5a2c4c24254104e12d3a1
BLAKE2b-256 c3cc24d2de5eacfabdefc561554e2c03b6f388bceab1ccae153e2d0c73dbbfde

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_i686.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 c89c51effb64d9f8b1c25d1be62c7b25e2c688fdaa7ffe6b96443dd6e1dbfcc3
MD5 65a011050bd222f435c01cabf2e77b4d
BLAKE2b-256 54b129c3daba138e1f5f881feb487c5d00e61f97cf05d612c30f987ca71db0f9

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_armv7l.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 d42b959d13438021a277e759f2a3a9947a0a1b48b47a0b4a2a80516dee4ac030
MD5 163db69c474b5a0eb9ceebab6c7ae2e3
BLAKE2b-256 3b0114932aee2b8a996cc3d3e69a1113ba8fa3b39ad12c51baac55dcf3bb5c5b

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e73d5c9c64fa1403c60ef34d40a6ea38e751dead02bcbb86598997de580c9509
MD5 93d5b10d8088a51b3d46a02084af656c
BLAKE2b-256 9166dd5e96b451f059bbc66f292c2fca3d1d2b89567138fd4d45b0e6d3cd0b2b

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fd625445f7a5c5971eb5213e57ee332e7cd9166dd8a9e5629c8a85d60e79feb4
MD5 238db6573d20592051635134cee0e7c8
BLAKE2b-256 54e23996d5b206ade3ea5c216228dd26d0b86d20361ad08ce2551c1f1495fa92

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 ffd1d8e5e7ccd0009dfe4d9e9b00f52c622e1cca365b5358b45ad8bfe8a3a121
MD5 a32ae146e0a9c458659d83f311efd089
BLAKE2b-256 7e883531ff0b9cce30cec5c38dc1604bd31a5e9fc4900a8655891dde08d713cd

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1f9605a9f81bdfc23d59aec40c0904ee31ebf2203d12692d4828d0759637200a
MD5 89634885b8e972ec0b317fd3a5ade547
BLAKE2b-256 26c3db324c939748dac1c50519680f7dff9ee7f30e4d0da0fb7a4bc482620dbf

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 a04e33f44372f1311d6035b393fead54e6a924f27fd722b5b08995c295556c60
MD5 bdfc1e5ed9c77b3b4a47fd326ba7caaf
BLAKE2b-256 6966d6aea1e1880741b440f379ae5ca607e05a684b22c960c5d01a32c620cb28

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 80ef23ce9ed9cea6efb74698a2c1a6146de6ecd0c083ce00177cba339598cba5
MD5 a308e742fcfba32483dadcc2e54a730e
BLAKE2b-256 b80b0ef58b633a3196876007276f43c9c27aa051c3a45de79dd2298cab3bcc54

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b38b19f917d50721731f5130b93cfc262b5c84affeebebaf3933692cc28d5cc3
MD5 cbfa2781fcd8fb31cfcf17681ae7990e
BLAKE2b-256 eafc837197bac0acb73ef400a73a60fe2873f74fb202dbbddfeb128c67732c37

See more details on using hashes here.

File details

Details for the file zmanim_core_bindings-0.2.6-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.6-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 7f475f5ada84cbae99c241b8110a7e06447a687ba96f954f056282b141886d9a
MD5 e0c7ae762a7a00e4843585b152fb8c02
BLAKE2b-256 2fec9431ee7407332595370c88df61f82b14f2333db8a6212f0bea25e453a2d8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page