Solar and lunar eclipses for a year, with visibility at your location.
This page lists every solar and lunar eclipse in a chosen Gregorian year, states whether each one is visible from the city you select, and for the visible ones prints the local contact times: first contact when the eclipse begins, the start and end of totality or annularity where the eclipse reaches that phase at your location, last contact when it ends, and the number of minutes between first and last contact.
Eclipses are typed the way the geometry types them. Solar eclipses come through as Total, Annular, Hybrid or Partial; lunar eclipses as Total, Partial or Penumbral. The date and time in the main columns are the local date and time of maximum, and the table can be filtered by kind and by visibility so that one year's visible lunar eclipses are two clicks away.
An eclipse is a global event with a local audience. The list for a year is built by iterating the global occurrences, and visibility is then a separate determination for the latitude and longitude you chose, because an eclipse can be total somewhere on Earth and entirely below your horizon at the same moment.
Contact times are printed only for eclipses visible at your location, and that restriction is deliberate. A contact time for an eclipse that never rises where you are is not a fact about your sky, and printing one would invite exactly the wrong inference. When a row says the eclipse is not visible here, its contact columns are empty rather than filled with a number that means nothing at your coordinates.
Two eclipse tables can disagree for reasons that are not errors. The commonest is that one is printing universal time and the other local time; this page prints local clock time for the selected city and its timezone. The second is which instant is being called the eclipse, since maximum, first contact and the beginning of totality are three different moments and can be more than an hour apart for the same event.
The third is place. Changing the city changes both of the columns that matter: an eclipse listed as not visible can become visible, and the contact times of one that stays visible shift with longitude and latitude. Positions here are computed to sub-arcsecond precision for the instant in question rather than interpolated from a printed table, so the minutes shown are the ones that fall out of the calculation for your coordinates.
It does not compute sutak. The page gives contact times and visibility and nothing beyond them; there is no sutak window anywhere in the calculation and none is displayed, and a claim to the contrary was removed from this page's description rather than left standing over a feature that does not exist.
It also does not read an eclipse against a birth chart. Interpretive readings in this codebase live where their citation lives, and this page's job is the astronomy: getting the instants right for your place, so that whatever is done with them afterwards is at least starting from the correct minute.
The year selector spans forty-one years, twenty on either side of the present one, and moving it re-runs the whole calculation rather than paging through a stored list. Rows can be searched by type and filtered by kind and by visibility.
Each row states the eclipse type in full, so a Hybrid solar eclipse, which is annular along part of its track and total along another, is not flattened into either one. Penumbral lunar eclipses are listed alongside partial and total ones even though they are the least conspicuous, because leaving them out would make the year's count wrong.