--- id: skyfield version: "1.55" license: MIT license_treatment: permissive maintenance: active --- # skyfield — Elegant astronomy for Python License: permissive · Maintenance: active · Downloads: 717.6K/mo ## What it is and what it does Skyfield is a pure-Python astronomy library that calculates precise positions for planets and Earth satellites. It wraps established ephemeris data (via jplephem) and orbital mechanics (via sgp4) to deliver research-grade coordinate predictions without requiring compiled Fortran or C libraries—only NumPy for numerical computation. The package is designed for developers and researchers who need to compute where celestial objects will be at specific times. You load ephemeris data once, create a timescale, then query positions for any celestial body at any moment. The result is returned in standard astronomical coordinates (right ascension, declination, distance) or other formats. It handles both long-term planetary motion and near-Earth satellite tracking. Use it for: - Plan astronomical observations by computing where planets or bright stars will appear at a given date and location. - Track Earth satellites (ISS, weather satellites) to predict visibility windows or collision risks. - Generate ephemerides for mission planning, ground station scheduling, or telescope pointing. - Validate or cross-check celestial coordinates in scientific research or planetarium software. - Build educational tools that visualize planetary motion or teach orbital mechanics. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Skyfield computes high-precision positions for planets and Earth satellites using pure Python, without requiring compiled astronomy libraries beyond NumPy. Yes. Skyfield is actively maintained, has no known vulnerabilities, installs with minimal friction, and is licensed permissively. It is the right choice if you need accurate planetary or satellite positions in Python without external compiled dependencies beyond NumPy. The 1756 stars and top-15000 popularity tier confirm it is a mature, well-adopted solution in its domain. ## Install pip install skyfield uv add skyfield poetry add skyfield ## Installing skyfield Before you install: Installation is straightforward with low friction; the package has a single binary dependency (NumPy) and is distributed as a wheel. The project is actively maintained with a recent release and 1756 repository stars, indicating stable, ongoing development. License in practice: MIT license is permissive and imposes no significant restrictions; you can use, modify, and distribute Skyfield in commercial or proprietary projects with minimal obligations. Quickstart: pip install skyfield from skyfield.api import load planets = load('de421.bsp') earth, mars = planets['earth'], planets['mars'] ts = load.timescale() t = ts.now() position = earth.at(t).observe(mars) ra, dec, distance = position.radec() Requires NumPy; ephemeris data files (e.g., de421.bsp) must be downloaded on first use via the load() function. Verify before relying: - Whether offline operation is possible after initial ephemeris download, or if periodic data refresh is required. - Accuracy guarantees or error bounds for position calculations across different time ranges and celestial objects. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: active - Downloads: 717.6K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags planetary position calculation, satellite ephemeris, astronomy coordinate computation, celestial mechanics python, earth satellite tracking, planet position prediction, astronomical observation planning, astronomy, ephemeris, orbital-mechanics [View on SkillFed](https://skillfed.io/packages/skyfield) · [View on PyPI](https://pypi.org/project/skyfield/)