# Astro v2.11.0 - Table of Contents > Astronomical calculations in Elixir including sunrise, sunset, moonrise, moonset, equinox, solstice, moonphase and more. ## Pages - [Astro](readme.md) - [License](license.md) - [Changelog](changelog.md) - [Sun & Moon Rise and Set Accuracy Comparisons](rise_and_set_comparisons.md) - Guides - [Getting started](getting_started.md) - [Solar events](solar.md) - [Lunar events](lunar.md) - [Accuracy](accuracy.md) ## Modules - [Astro](Astro.md): High-level API for common astronomical observations. - Solar - [Astro.Solar](Astro.Solar.md): Solar position, orbital mechanics, and equinox/solstice calculations. - [Astro.Solar.Eclipse](Astro.Solar.Eclipse.md): Solar eclipses: finding them, classifying them and measuring them, from the Besselian elements of the Moon's shadow. - [Astro.Solar.Eclipse.Local](Astro.Solar.Eclipse.Local.md): The local circumstances of a solar eclipse: how it is seen from a place on the Earth. - [Astro.Solar.Eclipse.Path](Astro.Solar.Eclipse.Path.md): The path of a solar eclipse: where on the Earth it is total or annular, as the central line and the northern and southern limits of the umbra, or the antumbra, and where it is seen at all, as the limits of the penumbra and the curves on the horizon where it begins or ends at sunrise or sunset, through the time the shadow is on the Earth. - [Astro.Solar.SunRiseSet](Astro.Solar.SunRiseSet.md): Computes sunrise and sunset times using the JPL DE440s ephemeris and a scan-and-bisect algorithm. - Lunar - [Astro.Lunar](Astro.Lunar.md): Calculates lunar position, phases, distance and related quantities. - [Astro.Lunar.CrescentVisibility](Astro.Lunar.CrescentVisibility.md): Implements three criteria for predicting the visibility of the new crescent moon: Yallop (1997), Odeh (2004), and Schaefer (1988/2000). - [Astro.Lunar.Eclipse](Astro.Lunar.Eclipse.md): Finds lunar eclipses and computes their circumstances. - [Astro.Lunar.Eclipse.Local](Astro.Lunar.Eclipse.Local.md): The local circumstances of a lunar eclipse: how it is seen from a place on the Earth. - [Astro.Lunar.MoonRiseSet](Astro.Lunar.MoonRiseSet.md): Computes moonrise and moonset times using the JPL DE440s ephemeris and a fully topocentric bisection algorithm. - Ephemeris - [Astro.Ephemeris](Astro.Ephemeris.md): Computes the apparent geocentric positions of the Moon and the Sun from a JPL DE440s (or compatible) SPK binary ephemeris kernel. - [Astro.Ephemeris.Downloader](Astro.Ephemeris.Downloader.md): Downloads JPL DE-series SPK binary ephemeris files from NASA NAIF. - [Astro.Ephemeris.Kernel](Astro.Ephemeris.Kernel.md): Parses JPL DE-series binary SPK ephemeris files (DAF/SPK format). - [Astro.Ephemeris.Subset](Astro.Ephemeris.Subset.md): Extracts a smaller DAF/SPK ephemeris kernel from a larger one. - Internals - [Astro.Coordinates](Astro.Coordinates.md): Coordinate transformations for high-precision lunar and solar position calculations. - [Astro.Earth](Astro.Earth.md): Earth constants, nutation, and elevation-related corrections for rise/set calculations. - [Astro.Saros](Astro.Saros.md): The Saros series of an eclipse, numbered as NASA's eclipse catalogues number them. - [Astro.Supervisor](Astro.Supervisor.md): A supervisor for the time zone lookup Astro uses to report rise and set times in the local time zone of a location. - [Astro.Time](Astro.Time.md): Time scales, conversions, and calendar utilities for astronomical calculations. ## Mix Tasks - Mix tasks - [mix astro.build_ephemeris](Mix.Tasks.Astro.BuildEphemeris.md): Builds a compact ephemeris kernel from JPL's `de440s.bsp`. - [mix astro.download_ephemeris](Mix.Tasks.Astro.DownloadEphemeris.md): Downloads the JPL DE440s ephemeris file (`de440s.bsp`) from NASA's NAIF server and places it in the application's `priv` directory.