Libzmanim
C library for zmanim & hebrew calendar
Install / Use
/learn @yparitcher/LibzmanimREADME
Libzmanim
a C library for zmanim and hebrew dates
a port of KosherJava/Zmanim developed by Eliyahu Hershfeld. https://kosherjava.com
Installation
run make to build the library (shared and static) in the lib folder.
run make test to build a test wrapper (in the test folder) to display the daily zmanim.
this creates a shared and static library that can be used by including the header files in include and linking with -lzmanim (you must add the library and headers to your PATH)
Windows
run window.bat in a VisualStudio command prompt to build libzmanim.dll and test.exe. This uses the OpenBSD stpncpy.
Usage
this library has a new struct hdate which is like struct tm used to store a date instance in the hebrew calendar.
one can initialize the members directly or use the hdate convertDate(struct tm date) function to convert a gregorian date, along with other functions in hebrewcalendar.c to manipulate it or get yomtov parshah etc.
for more documentation read the header files.
to format the date in hebrew use the functions in hdateformat.h.
one can then use this hdate along with the location struct (lat, long, elevation) in one of the getzmanim functions in zmanim.h that return a hdate with the correct zman.
for further examples see the test.c file that implements a basic wrapper to show daily zmanim
Test usage
./test year month day latitude longitude timezone Eretz_Yisroel
./test 2018 12 18 40.66896 -73.94284 -4.0 0
י טבת תשע״ט
עשרה בטבת
פרשת ויחי
alos: 05:41 AM EST
misheyakir: 06:19 AM EST
sunrise: 07:14 AM EST
shma: 09:31 AM EST
tefila: 10:18 AM EST
chatzos: 11:52 AM EST
mincha gedola: 12:15 PM EST
mincha ketana: 02:37 PM EST
plag hamincha: 03:36 PM EST
sunset: 04:30 PM EST
tzais: 05:01 PM EST
note: due to the limitations of the C standard library all times will show as if they in the computers timezone even though they are correctly calculated in the given timezone.
License
Libzmanim is Copyright (c) 2018 Yparitcher. licensed under the LGPL 2.1 license.
Related Skills
node-connect
349.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.5kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
