Skip to content


Repository files navigation

The Aquatic Jewish Calendar


Download the calendar here.

I recently attempted to research Aquatic Judaism for a personal project, but soon realized that almost no information about the religion exists on the Internet. In response, I've created this Aquatic Jewish calendar specifically for Terrestrial Jews, as an educational aid to better understand their Aquatic brethren.

The Terrestrial and Aquatic Judaism calendars differ in some crucial respects. The secular (Gregorian) calendar is solar: days, months, and years are based on the Earth's movement around the Sun. The Terrestrial Jewish calendar is lunisolar: Each month starts at a new moon, and each day starts at sunset. The Aquatic Jewish calendar is lunitidal: Each month starts at a new moon, and each day starts at high tide.

The sinusoidal waves on this calendar are graphs of predicted tidal heights in Boston, Massachusetts. For most observant Aquatic Jews, this alone is insufficiently accurate. The prudent Aquatic Jew will listen for the sound of the shofar at hide tide to determine when the day has begun or ended.

All images in this calendar are from the Met's open access collection

All tidal data was gathered from the NOAA website

Contact Me

Creating Your Own Aquatic Calendar

Email me and I'll happily create a calendar for you.

If you want to try making your own calendar, this repo contains most of the tools required.

Required Software

  • Python 3.7+
  • XeLaTeX

How to run the program

python3 -s [TIDAL STATION ID]

This will generate a calendar.pdf file.

Optional arguments

Argument Description Default
-s Tidal station ID 8443970 (Boston)



  • Updated the calendar for the year 5783.
  • Fixed: The hebcal API no longer works. Replaced with the pyluach Python module.
  • Removed calendar .tex, .pdf, and plot .pngs from the repo.
  • Changed my name


  • Updated the calendar for the year 5782.
  • Fixed a minor bug with setting the starting lunar state.


  • Updated the calendar for the year 5781.
  • Tidal data is automatically downloaded at runtime.
    • Removed, all files in tide_data/, and the -t argument (you no longer need to download tidal data and convert it to a csv file.)
    • Added argument -s (tidal stationID).
  • The (terrestrial) Jewish year is automatically determined via an online API.
    • Removed the -y argument (no longer needed).
  • Missing Python modules are now automatically installed at runtime.
  • Missing LaTeX packages are now automatically installed at runtime.
  • calendar.pdf is now automatically created (rather than having to run pdflatex externally).
  • Removed argument -p (now, tidal plots are always automatically generated).
  • Fixed: Lunar phase is inaccurate (now using pylunar module)
  • Fixed: Rare bug in which there could be too many high tides in a day.


  • Revised the calendar for the year 5780.
    • Re-plotted tidal data.
    • Revised the "intro" section.
    • Expanded some yom tov descriptions.
    • Fixed: Some typos in the yom tov descriptions.
    • Fixed: Inconsistent orthography for ח (was a mix of "ch" and "kh"; now, it is always "kh").
  • Update this README:
    • Rewrote the "Getting tidal data" section.
    • Updated image of Tishrei.
    • Added more contact information.
  • Improved tidal data parsing.
    • Added tide_data/boston_5780_raw.txt (raw NOAA data).
    • Added tide_data/boston_5780.csv (processed NOAA data).
    • Renamed tide_data/boston.csv to tide_data/boston_5779.csv.
    • Added to parse raw NOAA data.
  • Improved
    • Made the calculation of the first hour of the year more flexible.
    • Fixed: Sometimes too many tidal plot images are generated.
    • Fixed: If the last week of the month ends on Shabbat, an extra blank row is generated.