Skip to content

TomerFi/shabbat-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hebrew Shabbat Java API

Shabbat API sends requests and serialize responses to and fro HebCal's Shabbat Times REST API

<dependency>
  <groupId>info.tomfi.shabbat</groupId>
  <artifactId>shabbat-api</artifactId>
  <version>3.0.5</version>
</dependency>

requires info.tomfi.shabbat; // module-info.java

import info.tomfi.shabbat.APIRequest;
import info.tomfi.shabbat.ShabbatAPI;

var api = new ShabbatAPI();
var request = APIRequest.builder()
    .forGeoId(281184)
    .withDate(LocalDate.parse("2022-03-04")) // omit the withDate step to fetch the next shabbat
    .build();
var response = api.sendAsync(request).get();

System.out.println(response.location.city); // Jerusalem
System.out.println(response.location.country); // Israel
System.out.println(response.getShabbatStart()); // 2022-03-04T16:59+02:00
System.out.println(response.getShabbatEnd()); // 2022-03-05T18:30+02:00
System.out.println(response.getShabbatParasha()); // Parashat Pekudei
System.out.println(response.isRoshChodesh()); // true

HebCal Shabbat REST API
The GeoNames Database





JBang script available!

$ jbang shabbat_times@tomerfi -g 281184 -d 2022-03-04

Shabbat info for Jerusalem, Israel:
- starts on Friday, 4 March 2022, 16:59
- ends on Saturday, 5 March 2022, 18:30
- the parasha is Parashat Pekudei
- shabbat is rosh chodesh

Snapshots access

Snapshots are deployed to OSSRH:

<repository>
  <id>snapshots-repo</id>
  <url>https://oss.sonatype.org/content/repositories/snapshots</url>
  <releases>
    <enabled>false</enabled>
  </releases>
  <snapshots>
    <enabled>true</enabled>
  </snapshots>
</repository>