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.7.tar.gz (764.5 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.7-py3-none-win_amd64.whl (396.9 kB view details)

Uploaded Python 3Windows x86-64

zmanim_core_bindings-0.2.7-py3-none-win32.whl (339.2 kB view details)

Uploaded Python 3Windows x86

zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_x86_64.whl (555.9 kB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_i686.whl (574.7 kB view details)

Uploaded Python 3musllinux: musl 1.2+ i686

zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_armv7l.whl (622.2 kB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_aarch64.whl (536.4 kB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (395.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl (407.3 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ s390x

zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl (421.1 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ i686

zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (364.2 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (372.3 kB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

zmanim_core_bindings-0.2.7-py3-none-macosx_11_0_arm64.whl (368.9 kB view details)

Uploaded Python 3macOS 11.0+ ARM64

zmanim_core_bindings-0.2.7-py3-none-macosx_10_12_x86_64.whl (395.2 kB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

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

File metadata

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

File hashes

Hashes for zmanim_core_bindings-0.2.7.tar.gz
Algorithm Hash digest
SHA256 9d9a8809efec44c6382d97e96d8b6187c2cebf95180d31c82c652125931919d5
MD5 20dff7adb5bd83be55192c7406f102a1
BLAKE2b-256 e395a25b13712b3dd893311a6237f6e2c300e1186334a385376dbac9fac01408

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 a3b3348202dcd86a1a8945410b293b10e6bf59f5c14c93aa47109250be43f7eb
MD5 72a6edca0c142dd09c541faaddbffd64
BLAKE2b-256 1d5d7380f04991d50d275fcc1bc3a9e08ec87d28cfd4b5adc0a60172d23d5a59

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-win32.whl
Algorithm Hash digest
SHA256 0e3f0e843469fb95679cfcbc0375facebd355866ae08f99ba742496c17ceda7e
MD5 9a7cea2b502cf14355bde02f480e222f
BLAKE2b-256 973db72e23a5c447da482da93a89ca4b6cdaffc6cb65ed1a60da4fd3201a4563

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b25d0f3c0d12ab739648a0f8d57e102e5608f62182e89cb259f1eb9c62b6a909
MD5 cb53e9a7e274269f164ae81f240ae20d
BLAKE2b-256 847de6da2c6d4f6e0fdbc3cc7c93be9cdefc5ccf3c0cf24afb6f9e0437486a4e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 0981fc278133c1fe1c3c133fff3a807b3f7e15cfa60ed1725366d9b95736d5a8
MD5 e7d00e2ae96b317e7e831e55b83da22d
BLAKE2b-256 65aa6407053809e012f893c9a444048790de6355bc328b185653e4104314ad88

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 e67dc56cc19500977196f9ce5a081822117ddae9d22eeb4daa384861c6588475
MD5 ee13c2cd707bd141dd6111a1c0e71f41
BLAKE2b-256 2df67dd9fb065564cb93366483a47270a04622f9e1a03c34e7632b00f878b750

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 970c0d05696eb8d73444fe95ea0615159fe75a694d2fc7225e5375f00294678d
MD5 651744c4d616436b6a38cad5923c62cc
BLAKE2b-256 bbd8c73e01e3324bcff0f82bd870b09d4739f8547d4d0f5cbd255ae722b357bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1d6993eeae8728e89bb596d2d636b139d6c70126a69531baaf08ada514e6f8b3
MD5 e0de970eafcf227dfb4825bf545fcf0f
BLAKE2b-256 feec85bbb96ee31996c299c26cb43e7dc92e635099b5d2f1c769e397af7fba4c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 37d630e4d5c5d6d6754c5c233557492bd58ff00ccd67bd1b3b6ef8a3ca464840
MD5 4538399cc8301a7d4b1240dbb8ff398e
BLAKE2b-256 ee5322f0eff1e1dbfe97ae3f2e8dd97055ce1c312c30bceb7c5b0bbd37909d53

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f04d7474a2dde56c3ec83d3fb2cb288fabbb0bbb7ee99c6dd489ac103752726f
MD5 f8193f569c243e39a3988068fc23f667
BLAKE2b-256 10f138b007049aca9c68e0bd2768f9718c6d5ab29ef55711f7530e9d6744149f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 89721c68a47ab1ad9e2c44fe1bd8f76c71f2600fe0045c2d23b5d117d3203998
MD5 07ee54755659fb4cdce7d630f522aadd
BLAKE2b-256 11b447e2d85758b8387b33b6cc2573eb5461cf3190c6257660857ebfc76b0168

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c738fe941ef6626bdd89234ad324f35bc622769708e4d1f261ea3c2363eb1a1a
MD5 0e6b781973fa0071892af54759467077
BLAKE2b-256 f4b60a70a17455b32fe3b8c308d627f323466ca8d25e90b4c8426d88b9476d0b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d7d76ad455d5f4ec9694018e4614dc8d20719153bb968b66f2e7ee37ebc6606
MD5 6bfb4fd02d7e49c8bcd4a2ab9df34086
BLAKE2b-256 3aba68116a64df5875b8acdec8b46b55dab433f55ba2642aae2aeaef2f0cb393

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for zmanim_core_bindings-0.2.7-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 968a5246cf54dab9ddf8188e99c098e0b4e89ee7724faf69166303d319019e83
MD5 bc340b2f8993cff8ccee41f12c50caaf
BLAKE2b-256 c02423b67d3f27355bc53d70d44cafbf76bc2acc86d901de0e76c63f12f30efa

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