# Attribution — Live

Live is built on public orbital data, NASA/ESA imagery, and open-source libraries.

## Orbital Data

### CelesTrak

- **What we use:** Two-Line Element (TLE) sets for actively tracked Earth-orbiting objects
- **Endpoint:** `https://celestrak.org/NORAD/elements/gp.php?GROUP=active&FORMAT=tle`
- **Maintainer:** Dr. T. S. Kelso, Center for Space Standards & Innovation
- **Website:** [https://celestrak.org/](https://celestrak.org/)
- **Notes:** Verify [CelesTrak terms](https://celestrak.org/) before commercial redistribution of derived products.

A bundled snapshot lives at `public/data/tle-snapshot.txt`.

## Launch Schedule Data

### The Space Devs — Launch Library 2

- **What we use:** upcoming rocket launch schedule data — mission name, provider,
  rocket, launch pad, NET (no-earlier-than) time, status, and webcast links — shown
  on the `/launches` page and the home page; and the people in space right now
  (astronauts flagged in space, grouped by the active ISS and Tiangong expeditions'
  crews) on `/humans-in-space` and the home page.
- **Endpoints:** `https://ll.thespacedevs.com/2.3.0/launches/upcoming/`, proxied and
  trimmed server-side by `functions/api/launches.ts` before it reaches the browser;
  `2.3.0/astronauts/?in_space=true` and `2.3.0/expeditions/?is_active=true` for the
  crews. `scripts/refresh-feeds.mjs` fetches all three on a GitHub runner every six
  hours and commits trimmed snapshots to `public/data/` (the launches one is the
  fallback when the live proxy is throttled).
- **Website:** [https://thespacedevs.com/](https://thespacedevs.com/) ·
  [https://ll.thespacedevs.com/](https://ll.thespacedevs.com/)
- **License:** CC BY 4.0

## Space Weather Data

### NOAA Space Weather Prediction Center (SWPC)

- **What we use:** the planetary Kp index (current estimate) and a 3-day
  geomagnetic forecast — shown on the `/aurora` page as the current storm
  level, NOAA G-scale, and a latitude-based aurora visibility verdict.
- **Endpoints:** `https://services.swpc.noaa.gov/products/noaa-planetary-k-index.json`
  and `https://services.swpc.noaa.gov/products/noaa-planetary-k-index-forecast.json`,
  proxied and normalized server-side by `functions/api/space-weather.ts` before
  either reaches the browser.
- **Website:** [https://www.swpc.noaa.gov/](https://www.swpc.noaa.gov/)
- **License:** Public domain (US Government work, NOAA)

## Space Imagery (hotlinked, not redistributed)

### NASA / W. M. Keck Observatory — Elias 2-24 b artist's concept

- **What we use:** the artist's concept of the exoplanet Elias 2-24 b shown on
  `/discoveries/elias-2-24-b`. It is an illustration, labelled as such on the page.
- **Source URL:** `https://science.nasa.gov/wp-content/uploads/2026/09/elias-1-372.jpg`,
  published with [Newfound 'Baby' Planet Smashes Record for Youngest Known World](https://science.nasa.gov/universe/newfound-baby-planet-smashes-record-for-youngest-known-world/)
  (NASA Science, Ashley Balzer, 16 September 2026)
- **Credit:** W. M. Keck Observatory/Adam Makarenko, via NASA
- **Notes:** **hotlinked, not redistributed** — the `<img>` points at
  science.nasa.gov and no copy is stored in this repo or served from
  watchsat.live. `science.nasa.gov` is allowed in `img-src` in both CSP blocks of
  `public/_headers` for this reason.

## Space & Earth Imagery (bundled)

### NASA Blue Marble: Next Generation (day map)

- **File:** `public/textures/earth-day.jpg` (derived 4096×2048 JPEG)
- **Source:** [Blue Marble: Next Generation with Topography and Bathymetry](https://visibleearth.nasa.gov/images/73909/december-blue-marble-next-generation-w-topography-and-bathymetry) — December 2004 global mosaic
- **Original URL:** `https://eoimages.gsfc.nasa.gov/images/imagerecords/73000/73909/world.topo.bathy.200412.3x5400x2700.jpg` (full-res 5400×2700 source)
- **Credit:** NASA Earth Observatory (Reto Stöckli, Robert Simmon, et al.)
- **License:** NASA imagery — public domain / free for use with credit

### NASA Black Marble 2016 (night lights)

- **Files:** `public/textures/earth-night.jpg` (derived 4096×2048 JPEG via `fetch-textures.yml`) and `earth-night-8192.jpg`, an 8192×4096 rendition of the same source that desktop-class devices progressively upgrade to
- **Source:** [Earth at Night / Black Marble flat maps — 2016](https://science.nasa.gov/earth/earth-observatory/earth-at-night/maps/)
- **Original URL:** `https://eoimages.gsfc.nasa.gov/images/imagerecords/144000/144898/BlackMarble_2016_3km.jpg` (full-res 13500×6750 source)
- **Credit:** NASA Earth Observatory
- **License:** NASA imagery — credit NASA Earth Observatory

### NASA Visible Earth — Blue Marble clouds

- **File:** `public/textures/earth-clouds.jpg` (derived 4096×2048 JPEG)
- **Source:** [Blue Marble Clouds](https://visibleearth.nasa.gov/images/57747/blue-marble-clouds) (`cloud_combined_2048.jpg`)
- **Credit:** NASA Earth Observatory
- **Usage:** Opacity / albedo for the cloud layer in the Earth shader (Sprint A)

### NASA SVS — Deep Star Maps 2020 (Milky Way all-sky backdrop)

- **File:** `public/textures/starmap-svs.jpg` (derived 4096×2048 JPEG)
- **Source:** [NASA Scientific Visualization Studio — Deep Star Maps 2020](https://svs.gsfc.nasa.gov/4851/) (SVS 4851), celestial `starmap_2020_8k.exr` (8192×4096 linear EXR) → display sRGB 4096×2048 (resized in linear light, exposure matched against NASA's own preview rendition) by `.github/workflows/fetch-textures.yml`
- **Credit:** NASA Scientific Visualization Studio
- **License:** NASA imagery — public domain
- **Notes:** Equirectangular in J2000 RA/Dec (RA 0h at center increasing leftward, Dec +90° at top). `src/lib/space-background.ts` samples it by right ascension/declination, rotating scene directions from equator-of-date to J2000; alignment verified against the Yale Bright Star Catalog overlay (16/16 first-magnitude stars within 2 px).

**Previously used (historical credit):** `public/textures/milky-way-gaia.jpg`, [Gaia's sky in colour — equirectangular projection](https://sci.esa.int/web/gaia/-/60196-gaia-s-sky-in-colour-equirectangular-projection), credit ESA/Gaia/DPAC, CC BY-SA 3.0 IGO, based on measurements of ~1.7 billion stars. It served as the space backdrop until the NASA SVS swap above and was removed from the project on 2026-08-28 (no Gaia-derived pixels remain; `starmap-svs.jpg` derives solely from the NASA SVS source).

### NASA LRO/LROC + LOLA — Moon

- **Files:** `public/textures/moon-color.jpg`, `public/textures/moon-color-8192.jpg`, `public/textures/moon-height.jpg`
- **Source:** [NASA SVS CGI Moon Kit](https://svs.gsfc.nasa.gov/4720/)
- **Color:** LROC WAC natural-colour mosaic (`lroc_color_poles_4k.tif`), adjusted by NASA SVS to more closely match human vision, 4096×2048 TIFF → JPEG; the same mosaic's `lroc_color_poles_8k.tif` gives the 8192×4096 `moon-color-8192.jpg` that desktop-class devices progressively upgrade to when the Moon is focused
- **Relief:** LOLA global elevation data (`ldem_4.tif`, 1440×720), used for subtle geometric displacement, resized to 2048×1024 JPEG
- **Credit:** NASA Scientific Visualization Studio; Ernie Wright (USRA); Noah Petro (NASA/GSFC); LRO/LROC and LOLA teams
- **Rendering:** Moon position, distance, apparent size, phase illumination, and libration follow the simulation time. The mean radius is 1737.4 km against Earth's 6371 km scene radius.

### NASA Solar Dynamics Observatory — Sun

- **Files:** `public/textures/sun-sdo.jpg`, `public/textures/sun-corona-aia.jpg`
- **Source:** [NASA SDO — The Sun Now](https://sdo.gsfc.nasa.gov/data/)
- **Photosphere:** HMI continuum (`latest_4096_HMIIC.jpg`), native 4096×4096, refreshed by `fetch-textures.yml` — a current-conditions image, not a fixed archive frame
- **Corona overlay:** AIA 171 Å (`latest_4096_0171.jpg`), native 4096×4096, refreshed by `fetch-textures.yml`, remapped in-shader from EUV false colour toward pearly white/gold streamers
- **Credit:** NASA/SDO and the HMI & AIA science teams
- **Rendering:** Simulation-time geocentric sky direction. Disk sits on a visual sky shell with ~0.53° apparent diameter; shell distance is not the physical Earth–Sun AU.

### Mars — Viking global colour mosaic (primary USGS source)

- **Files:** `public/textures/mars.jpg` (4096×2048 equirectangular) and `mars-8192.jpg`, an 8192×4096 rendition of the same download for the focused-body progressive upgrade
- **Source:** [USGS Astrogeology — Mars Viking Global Color Mosaic 925m](https://planetarymaps.usgs.gov/mosaic/Mars_Viking_ClrMosaic_global_925m.tif) (23059×11530 GeoTIFF, ~761 MB), streamed down to 4096×2048 by `.github/workflows/fetch-textures.yml` — survey run 33285040262 documents the URL/dimension proof
- **Credit:** NASA/JPL/USGS Astrogeology Science Center
- **License:** NASA/USGS imagery — public domain
- **Rendering:** True simulation-time geocentric sky direction and Sun-relative phase lighting; display size is enhanced so Mars remains visible in an Earth-scale scene.

### Venus — Magellan radar mosaic (primary USGS source)

- **Files:** `public/textures/venus-radar.jpg` (4096×2048 equirectangular) and `venus-radar-8192.jpg`, the source mosaic at its native 8192×4096 for the focused-body progressive upgrade
- **Source:** [USGS Astrogeology — Magellan Global C3-MDIR Synthetic Color Mosaic 4641m](https://planetarymaps.usgs.gov/mosaic/Venus_Magellan_C3-MDIR_Colorized_Global_Mosaic_4641m.tif) (8192×4096 GeoTIFF, ~96 MB), resized to 4096×2048 by `.github/workflows/fetch-textures.yml`
- **Credit:** NASA/JPL/USGS Astrogeology Science Center
- **License:** NASA/USGS imagery — public domain
- **Important:** This is a synthetic-colour radar mosaic — a radar-derived surface visualization, not an optical view through Venus's clouds.
- **Rendering:** True simulation-time geocentric sky direction and Sun-relative phase lighting; radar returns also drive soft relief/AO so ridges read as topography.

### Jupiter — Cassini cylindrical global map (primary NASA source)

- **File:** `public/textures/jupiter.jpg` (3601×1801 equirectangular)
- **Source:** [PIA07782 — Cassini's Best Maps of Jupiter (Cylindrical Map)](https://photojournal.jpl.nasa.gov/catalog/PIA07782), fetched from the catalog page's own full-resolution asset URL by `.github/workflows/fetch-textures.yml`
- **Credit:** NASA/JPL/Space Science Institute
- **License:** NASA imagery — public domain

### Pluto — New Horizons global colour mosaic (primary NASA source)

- **File:** `public/textures/pluto.jpg` (4096×2048 equirectangular)
- **Source:** [PIA11707 — Pluto Color Map](https://images-api.nasa.gov/search?nasa_id=PIA11707) (NASA Image and Video Library), the New Horizons Ralph/MVIC global colour mosaic from the July 2015 flyby, full-res 5926×2963 asset fetched by `.github/workflows/fetch-textures.yml`
- **Credit:** NASA/JHUAPL/SwRI
- **License:** NASA imagery — public domain
- **Notes:** The July 2015 flyby left Pluto's winter-dark south polar region un-imaged; NASA's mosaic is black (no data) there. The fetch workflow fills only that void with a featureless blend of the real boundary colours — never invented terrain — so the rendered globe has no false-looking black cap while every imaged pixel remains exactly NASA's.

### Mercury, Saturn — bundled basemaps (since PR #42)

- **Files:** `public/textures/mercury.jpg`, `saturn.jpg`, `saturn-rings.jpg`
  (2048×1024 equirectangular; ring strip for Saturn)
- **Source:** community-redistributed basemaps with heritage from NASA mission products
  (Mercury: MESSENGER; Saturn + rings: Cassini), via the threex.planets texture
  collection. Positions, distances and live apparent magnitude still come from
  Astronomy Engine, exactly as before.
- **License chain:** community redistribution — see `public/textures/SOURCES.md` for the
  per-file table. A documented NASA-hosted global map replaces a file the moment one is
  proven to exist (that is how Jupiter's and Pluto's were upgraded); five survey rounds
  across Photojournal, USGS, and the NASA Image Library found none for these two —
  Mercury's only NASA-hosted global map is enhanced false colour (rejected: not what the
  eye sees), and no global Saturn cylindrical map is published at all.

### Additional imagery

Mars & Venus maps were Solar System Scope (CC-BY-4.0) re-renders until 2026-08-30, when the USGS Astrogeology primary mosaics above replaced them (historical credit retained here, Gaia-swap precedent).

Navigation-layer satellite badge: GPS Block III artist's rendering, U.S. Air Force (public domain), via Wikimedia Commons; background removed for in-app use.

Raw downloads (optional, not required at runtime) may live under `public/textures/src/`.

## Esri World Imagery — sky-mode ground tiles

- **What we use:** an optional, runtime-fetched true-color ground patch for the
  Explore Sky / Live Sky AR ground shell's near field, used when the High or
  Balanced quality preset is active.
- **Service:** [Esri World Imagery](https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer)
  (ArcGIS Online), part of Esri's public basemap services
- **Endpoint:** `https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}`
  (Web Mercator tiles, zoom 15–16, ~2–5 m/px)
- **Required credit:** Esri, Maxar, Earthstar Geographics, and the GIS User Community
- **Notes:** fetched only while sky mode is open, aborted on exit; the Battery quality
  preset uses NASA GIBS instead (see below), and any Esri failure falls back to GIBS
  and then to the bundled equirect ground — this layer only ever sharpens, never
  replaces, the always-available real-location albedo. See `src/lib/ground-imagery.ts`
  and `src/lib/quality-preset.ts`.

## NASA GIBS — runtime ground imagery (AR sky-view)

- **What we use:** an optional, runtime-fetched true-color patch for the AR ground shell's
  near field (~30 km across, ~38 m/px), on top of the bundled Blue Marble/Black Marble ground
  albedo described above (which already works with zero network access).
- **Service:** [NASA GIBS](https://www.earthdata.nasa.gov/eosdis/science-system-description/eosdis-components/gibs)
  (Global Imagery Browse Services), part of NASA EOSDIS
- **Layer:** `Landsat_WELD_CorrectedReflectance_TrueColor_Global_Annual` — the Web-Enabled
  Landsat Data (WELD) global annual true-color composite
- **Endpoint:** `https://gibs.earthdata.nasa.gov/wmts/epsg3857/best/Landsat_WELD_CorrectedReflectance_TrueColor_Global_Annual/default/2021-01-01/GoogleMapsCompatible_Level12/{z}/{y}/{x}.jpg`
  (WMTS REST, EPSG:3857 Web Mercator, zoom 12)
- **License:** NASA/USGS imagery — public domain, no API key required
- **Notes:** fetched only while the AR ground view is open, aborted on exit; any failure
  (offline, CORS, slow response, bad decode) silently falls back to the bundled equirect
  ground — this layer only ever sharpens, never replaces, the always-available real-location
  albedo. See `src/lib/ground-imagery.ts` and `public/textures/SOURCES.md`.

## Open-Meteo — weather & geocoding

- **What we use:** current weather (per-layer cloud cover, wind, visibility) driving
  the simulated sky dome in Explore Sky, and city-name search for setting an
  observer location.
- **Service:** [Open-Meteo](https://open-meteo.com/) — free, keyless, CORS-open APIs
- **Endpoints:** `https://api.open-meteo.com/v1/forecast` (weather) and
  `https://geocoding-api.open-meteo.com/v1/search` (place-name search)
- **Note:** Open-Meteo's API is free for non-commercial use; WatchSat currently
  relies on that free tier, and whether a paid commercial plan is needed as usage
  grows is a pending decision — see open-meteo.com for current terms rather than
  treating this note as a legal determination.
- **Privacy:** requests send only rounded coordinates (weather) or the place name
  you type (geocoding) — never a visitor's stored pass-prediction location. See
  `src/lib/sky-weather.ts`, `src/lib/geocode.ts`, and the privacy policy.

## Libraries

### satellite.js

- **Role:** SGP4/SDP4 propagation
- **Repository:** [https://github.com/shashwatak/satellite-js](https://github.com/shashwatak/satellite-js)
- **License:** MIT

### Three.js

- **Role:** WebGL rendering, controls, post-processing
- **Website:** [https://threejs.org/](https://threejs.org/)
- **License:** MIT

### Astronomy Engine

- **Role:** Geocentric/heliocentric ephemerides, precession to equator-of-date coordinates, and lunar libration
- **Repository:** [https://github.com/cosinekitty/astronomy](https://github.com/cosinekitty/astronomy)
- **License:** MIT

## In-App Credit

HUD copy credits CelesTrak TLE × SGP4. Imagery credits are maintained in this file and `public/textures/SOURCES.md`.

## ESA Hipparcos Catalogue — dense real star field

- File: `public/data/stars-hip.bin` (~79,000 stars to Vmag ≤ 9.0; a 4-byte
  little-endian star-count header followed by 6-byte quantized records: RA u16,
  Dec i16, Vmag u8 (0.05-mag steps), color temperature u8 (128 K steps),
  little-endian, J2000 — sub-pixel at the app's narrowest FOV; the loader also
  still accepts the earlier 12-byte f32 layout)
- Source: ESA, 1997, "The Hipparcos and Tycho Catalogues" — the Hipparcos main
  catalogue, CDS catalogue [I/239](https://cdsarc.cds.unistra.fr/viz-bin/cat/I/239)
  (`hip_main.dat`), public data
- Credit: European Space Agency (Hipparcos mission); catalogue curated by CDS
  (Centre de Données astronomiques de Strasbourg)
- Processing: `scripts/pack-hipparcos.mjs` filters to finite RA/Dec/Vmag with
  Vmag ≤ 9.0, propagates each position from the catalogue's native epoch
  (J1991.25) to J2000.0 using its own proper motion, and converts the B−V
  color index to a display Kelvin temperature via the Ballesteros (2012)
  formula. Fetched and packed on a schedule by
  `.github/workflows/fetch-star-catalog.yml`.
- Rendering note: this is the primary real star field — fine real grain at
  every zoom instead of thinning out to the painted Milky Way map, with
  brightness from each star's real visual magnitude through the same
  light-pollution and daylight physics as everything else.

## Yale Bright Star Catalog — fallback star field

- File: `public/stars-bsc5.bin` (9,096 stars, 12 bytes each: RA °f32, Dec °f32,
  Vmag ×100 i16, color temperature K u16, little-endian, J2000)
- Source: Yale Bright Star Catalog (BSC5) via the MIT-licensed JSON packaging at
  github.com/brettonw/YaleBrightStarCatalog (`bsc5-short.json`, commit abffb3b)
- Credit: Hoffleit & Warren, Yale University Observatory; packaging (c) 2016
  Bretton Wade, MIT
- Rendering note: `src/lib/star-catalog.ts` loads the denser Hipparcos catalog
  above first and falls back to this bundled 9,096-star set only if that fetch
  fails — both replace the former procedurally-generated star overlay, which
  remains only as the last-resort fallback if neither real catalog loads.

## Welcome-page hero images

Two NASA public-domain images. The two `.jpg` masters below are committed as
the files were supplied (no crop, no resize, no re-encode). What the page *serves*
is a set of derived WebP renditions of the same frames, made for delivery weight
(approved by ayaqen, MILESTONES §3 decision 4); see "Delivered renditions" at the end of this
section. All placement is CSS. Everything lives under `src/assets/` and is
imported by `Welcome.tsx`, so Vite emits fingerprinted `/assets/welcome-*-<hash>`
URLs (cache-busting on every swap).

- File: `src/assets/welcome-night.jpg` (7680×4320, ~14.4 MB, committed
  byte-for-byte) — the landing hero. NASA astronaut photograph from the
  International Space Station by Scott Kelly, "Italy and the Alps at night"
  (Expedition 46, January 2016; NASA Johnson Flickr 24609284564): the Italian
  peninsula lit at night with the Alps to the north and airglow on the limb.
  This 8K rendition is the one spacex.com serves as the hero of its Human
  Spaceflight → Earth page (`earth_feature.jpg` on SpaceX's CMS) — the page
  ayaqen's 2000×1125 wallpaper came from. Identified by ORB/RANSAC feature
  matching against that wallpaper (3784 of 3979 possible inliers) and fetched
  on the GitHub runner on 2026-09-03. Gateway frame `ISS046-E-24329`
  (4928×3280), shipped briefly in September 2026 as this image's
  "full-resolution original", is a DIFFERENT exposure from the same pass and
  was removed.
- File: `src/assets/welcome-globe.jpg` (3718×3718, ~2.9 MB — the Wikimedia Commons
  original, `File:Blue Marble Eastern Hemisphere.jpg`) — the full-screen panel
  after the hero, behind the live numbers. NASA **Blue Marble (2002), Eastern
  Hemisphere** composite (NASA Goddard Space Flight Center; Reto Stöckli et
  al.), the classic full-disc view with Australia and Southeast Asia on black.
- Credit: NASA (night photograph: ISS Expedition 46 crew, via NASA Johnson's
  Gateway to Astronaut Photography of Earth; Blue Marble: NASA GSFC, via its
  Wikimedia Commons file page) — public domain as NASA works.
- Rendering note: both sit on a space-black base so a missing file degrades to
  black (no broken-image icon); the hero carries a bottom gradient for legibility
  of the white copy.
- Delivered renditions: `welcome-night-{1280,1920,2560,3840,5120}.webp` (whole
  frame), `welcome-night-portrait-{1024,1536,2048,2560}.webp` (centred 4:5 crop,
  3456×4320 of the master, for portrait viewports) and
  `welcome-globe-{960,1280,1920}.webp`. Made with sharp: Lanczos3 downscale,
  WebP quality 86, effort 6, smart subsampling, no sharpening and no colour
  change. The 7680 px master is still the last step of the hero's `srcset`, served
  only where no rendition is wide enough (6K/8K-class screens); the globe master is
  source material only and is no longer served. `src/lib/welcome-hero.mjs` holds
  the `srcset`/`sizes` that `Welcome.tsx` and the home page's `<link rel=preload>`
  share.

## Blog images

Real NASA and NOIRLab photographs and NASA charts, never WatchSat screenshots or renders. Each is built on a
GitHub runner by `scripts/build-blog-images.mjs` from the exact file listed in
`scripts/blog-images.json`: a hero is cropped (or, for the Phobos picture, shown whole on black
bars) into a 1600×900 `hero.webp` and a 1200×630 `og.jpg`, and an inline image is resized to
1200 px wide. Everything lands in `public/blog/<slug>/`, and each post's hero caption repeats the
credit and license below.

### Expedition 75 Launch

- **Files:** `public/blog/satellite-catalog-six-digit-numbers/hero.webp` and `og.jpg` — the hero
  of "The satellite catalog ran out of five-digit NORAD IDs"
- **Source:** [Expedition 75 Launch](https://images.nasa.gov/details/NHQ202607140002), NASA Image
  and Video Library (NHQ202607140002; the Soyuz MS-29 launch from Baikonur, 14 July 2026)
- **Credit:** NASA/Bill Ingalls
- **License:** Public domain (NASA)

### Voyager 1 Launch

- **Files:** `public/blog/voyager-1-one-light-day/hero.webp` and `og.jpg` — the hero of "Voyager 1
  will reach one light-day from Earth on Nov. 18"
- **Source:** [Voyager 1 Launch](https://images.nasa.gov/details/PIA21747), NASA Image and Video
  Library (PIA21747; the launch of 5 September 1977)
- **Credit:** NASA/JPL-Caltech/KSC
- **License:** Public domain (NASA)

### Starlink Satellites Imaged from CTIO

- **Files:** `public/blog/starlink-two-in-three-satellites/hero.webp` and `og.jpg` — the hero of
  "Two-thirds of active satellites are now Starlinks"
- **Source:** [Starlink Satellites Imaged from CTIO](https://noirlab.edu/public/images/iotw1946a/),
  NOIRLab Image of the Week (iotw1946a, 13 November 2019)
- **Credit:** CTIO/NOIRLab/NSF/AURA/DECam DELVE Survey
- **License:** [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), per
  [NOIRLab's usage terms](https://noirlab.edu/public/copyright/)
- **Changes:** cropped and re-encoded (WebP, JPEG)

### Phobos from 6,800 Kilometers (Color)

- **Files:** `public/blog/mmx-phobos-sample-return/hero.webp` and `og.jpg` — the hero of the
  Martian Moons eXploration (MMX) post
- **Source:** [Phobos from 6,800 Kilometers (Color)](https://science.nasa.gov/photojournal/phobos-from-6800-kilometers-color/),
  NASA Photojournal (PIA10368)
- **Credit:** NASA/JPL-Caltech/University of Arizona
- **License:** Public domain (NASA)

### Martian Moon Deimos in High Resolution

- **File:** `public/blog/mmx-phobos-sample-return/deimos.webp` — the inline image in the same post
- **Source:** [Martian Moon Deimos in High Resolution](https://science.nasa.gov/photojournal/martian-moon-deimos-in-high-resolution/),
  NASA Photojournal (PIA11826)
- **Credit:** NASA/JPL-Caltech/University of Arizona
- **License:** Public domain (NASA)

### Aurora over Europe from the ISS

- **Files:** `public/blog/geomagnetic-storm-g3-northern-lights-october/hero.webp` and `og.jpg` — the
  hero of "October 10 geomagnetic storm reached G3: aurora outlook"
- **Source:** [iss074e0150285](https://images.nasa.gov/details/iss074e0150285), NASA Image and Video
  Library (an aurora over Europe photographed from the International Space Station, 19 January 2026)
- **Credit:** NASA/Chris Williams
- **License:** Public domain (NASA)

### Solar minimum and solar maximum

- **File:** `public/blog/geomagnetic-storm-g3-northern-lights-october/solar-min-max.webp` — the inline
  image in the same post
- **Source:** [NASA, NOAA Announce That the Sun Has Reached the Solar Maximum Period](https://svs.gsfc.nasa.gov/14683/),
  NASA Scientific Visualization Studio (SVS 14683; SDO images from December 2019 and May 2024)
- **Credit:** NASA/SDO
- **License:** Public domain (NASA)

### Crew-12 Returns to Earth

- **Files:** `public/blog/iss-crew-13-record-docking-crew-12-home/hero.webp` and `og.jpg` — the hero of
  "ISS crew swap: Crew-13 docks in record time, Crew-12 lands"
- **Source:** [Crew-12 Returns to Earth](https://www.nasa.gov/image-article/crew-12-returns-to-earth/),
  nasa.gov (Dragon Freedom under its parachutes, 8 October 2026)
- **Credit:** NASA/Keegan Barber
- **License:** Public domain (NASA)

### Crew-13 launch

- **File:** `public/blog/iss-crew-13-record-docking-crew-12-home/crew-13-launch.webp` — the inline image
  in the same post
- **Source:** [NASA's SpaceX Crew-13 Launches to International Space Station](https://www.nasa.gov/news-release/nasas-spacex-crew-13-launches-to-international-space-station/),
  nasa.gov (1 October 2026)
- **Credit:** NASA/Joel Kowsky
- **License:** Public domain (NASA)

### Starship Flight 6 seen from the ISS

- **Files:** `public/blog/starship-flight-14-starlink-v3-orbit/hero.webp` and `og.jpg` — the hero of
  "Starship Flight 14 reached orbit: tracking its 26 Starlinks"
- **Source:** [iss072e220043](https://www.nasa.gov/image-detail/amf-iss072e220043/), nasa.gov and the
  NASA Image and Video Library (the plume of Starship's sixth flight, 19 November 2024)
- **Credit:** NASA/Don Pettit
- **License:** Public domain (NASA)

### Fireball Over Kitt Peak

- **Files:** `public/blog/orionid-meteor-shower-2026-satellites/hero.webp` and `og.jpg` — the hero of
  "Orionid meteor shower 2026: peak, Moon and satellites"
- **Source:** [Fireball Over Kitt Peak](https://noirlab.edu/public/images/iotw2522a/), NOIRLab Image of
  the Week (iotw2522a, May 2025)
- **Credit:** KPNO/NOIRLab/NSF/AURA/J. Dai
- **License:** [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), per
  [NOIRLab's usage terms](https://noirlab.edu/public/copyright/)
- **Changes:** cropped and re-encoded (WebP, JPEG)

### Orionid sky chart

- **File:** `public/blog/orionid-meteor-shower-2026-satellites/orionid-sky-chart.webp` — the inline image
  in the same post
- **Source:** [What's Up: October 2026 Skywatching Tips from NASA](https://science.nasa.gov/solar-system/skywatching/whats-up-october-2026-skywatching-tips-from-nasa/),
  NASA Science (a chart of the Orionid radiant on 22 October 2026)
- **Credit:** NASA/JPL-Caltech
- **License:** Public domain (NASA)

### The International Space Station after STS-130

- **Files:** `public/blog/iss-speed-altitude-orbit/hero.webp` and `og.jpg` — the hero of
  "How fast does the ISS travel? Speed, altitude and orbit"
- **Source:** [s130e012016](https://images.nasa.gov/details/s130e012016), NASA Image and Video Library (the station photographed from space shuttle Endeavour after undocking, February 2010)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Hubble released from Atlantis

- **Files:** `public/blog/where-is-hubble-space-telescope/hero.webp` and `og.jpg` — the hero of
  "Where is the Hubble Space Telescope now? Orbit and reentry"
- **Source:** [s125e011767](https://images.nasa.gov/details/s125e011767), NASA Image and Video Library (Hubble on Atlantis's robotic arm before its release on the last servicing mission, May 2009)
- **Credit:** NASA
- **License:** Public domain (NASA)

### TDRS-M in its fairing

- **Files:** `public/blog/geostationary-orbit-explained/hero.webp` and `og.jpg` — the hero of
  "What is a geostationary orbit? Height, speed and delay"
- **Source:** [KSC-20170808-PH_KLS01_0532](https://images.nasa.gov/details/KSC-20170808-PH_KLS01_0532), NASA Image and Video Library (the TDRS-M relay satellite in its payload fairing, August 2017)
- **Credit:** NASA/Kim Shiflett
- **License:** Public domain (NASA)

### PACE orbit with swaths

- **Files:** `public/blog/sun-synchronous-orbit-explained/hero.webp` and `og.jpg` — the hero of
  "What is a sun-synchronous orbit? Polar orbits and dawn-dusk"
- **Source:** [PACE orbit with swaths and instrument fields of view](https://svs.gsfc.nasa.gov/5019/), NASA Scientific Visualization Studio (SVS 5019)
- **Credit:** NASA's Scientific Visualization Studio
- **License:** Public domain (NASA)

### Tonga eruption atmospheric wave

- **Files:** `public/blog/how-many-gps-satellites/hero.webp` and `og.jpg` — the hero of
  "How many GPS satellites are there? Height and how GPS works"
- **Source:** [PIA24905](https://images.nasa.gov/details/PIA24905), NASA Image and Video Library (JPL GDGPS multi-GNSS ionosphere data after the January 2022 Hunga Tonga eruption)
- **Credit:** NASA/JPL-Caltech/GDGPS
- **License:** Public domain (NASA)

### Hypervelocity impact test

- **Files:** `public/blog/space-debris-how-much-in-orbit/hero.webp` and `og.jpg` — the hero of
  "How much space debris is in orbit? 2026 counts and risks"
- **Source:** [wstf0507e04048](https://images.nasa.gov/details/wstf0507e04048), NASA Image and Video Library (a test plate after a hypervelocity impact test at White Sands Test Facility, 2007)
- **Credit:** NASA
- **License:** Public domain (NASA)

### ATV-3 reentry

- **Files:** `public/blog/satellite-reentry-what-happens/hero.webp` and `og.jpg` — the hero of
  "What happens when a satellite reenters the atmosphere?"
- **Source:** [iss033e009232](https://images.nasa.gov/details/iss033e009232), NASA Image and Video Library (the breakup of Europe's ATV-3 cargo ship, photographed from the ISS on 3 October 2012)
- **Credit:** NASA
- **License:** Public domain (NASA)

### X-class flare seen by SDO

- **Files:** `public/blog/solar-storms-effects-on-satellites/hero.webp` and `og.jpg` — the hero of
  "How do solar storms affect satellites? Drag, GPS, Starlink"
- **Source:** [NASA's SDO Observes an X-class Solar Flare](https://images.nasa.gov/details/GSFC_20171208_Archive_e000934), NASA Image and Video Library (19 October 2014)
- **Credit:** NASA/SDO
- **License:** Public domain (NASA)

### Stars and Satellites over Gemini North

- **Files:** `public/blog/satellite-streaks-astronomy-rubin/hero.webp` and `og.jpg` — the hero of
  "Do satellites affect astronomy? Streaks, Starlink and Rubin"
- **Source:** [Stars and Satellites over Gemini North](https://noirlab.edu/public/images/iotw2541a/), NOIRLab Image of the Week (iotw2541a, 8 October 2025)
- **Credit:** International Gemini Observatory/NOIRLab/NSF/AURA/J. Warner
- **License:** [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), per
  [NOIRLab's usage terms](https://noirlab.edu/public/copyright/)
- **Changes:** cropped and re-encoded (WebP, JPEG)

### Webb's primary mirror fully assembled

- **Files:** `public/blog/where-is-james-webb-space-telescope/hero.webp` and `og.jpg` — the hero of
  "Where is the James Webb Space Telescope? Distance and orbit"
- **Source:** [NASA's James Webb Space Telescope Primary Mirror Fully Assembled](https://images.nasa.gov/details/GSFC_20171208_Archive_e000422), NASA Image and Video Library
- **Credit:** NASA/Chris Gunn
- **License:** Public domain (NASA)

### Jiuquan Satellite Launch Center from orbit

- **Files:** `public/blog/tiangong-space-station/hero.webp` and `og.jpg` — the hero of
  "Where is China's Tiangong space station? Orbit and crew"
- **Source:** [iss010e14586](https://images.nasa.gov/details/iss010e14586), NASA Image and Video Library (a launch complex at Jiuquan, photographed from the International Space Station, January 2005)
- **Credit:** NASA
- **License:** Public domain (NASA)

### City lights in a time exposure from the ISS

- **Files:** `public/blog/how-does-starlink-work/hero.webp` and `og.jpg` — the hero of
  "How does Starlink work? Orbits, dishes and laser links"
- **Source:** [iss074e0319988](https://images.nasa.gov/details/iss074e0319988), NASA Image and Video Library (star trails and city lights streak as the station orbits Earth, February 2026)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Earth Observing Fleet

- **Files:** `public/blog/types-of-orbits-leo-meo-geo/hero.webp` and `og.jpg` — the hero of
  "What are the types of orbits? LEO, MEO, GEO and HEO"
- **Source:** [Earth Observing Fleet - Now](https://svs.gsfc.nasa.gov/5067/), NASA Scientific Visualization Studio (SVS 5067)
- **Credit:** NASA's Scientific Visualization Studio
- **License:** Public domain (NASA)

### Artemis II launch spectators

- **Files:** `public/blog/rocket-launches-2026-count/hero.webp` and `og.jpg` — the hero of
  "How many rocket launches in 2026? The count so far"
- **Source:** [Artemis II launch](https://www.nasa.gov/image-detail/artemis-ii-launch-14/), nasa.gov (1 April 2026)
- **Credit:** NASA/Keegan Barber
- **License:** Public domain (NASA)

### LDEF retrieval over the Namib Desert

- **Files:** `public/blog/how-long-do-satellites-last/hero.webp` and `og.jpg` — the hero of
  "How long do satellites last? Lifespan by orbit and type"
- **Source:** [S32-85-029](https://images.nasa.gov/details/S32-85-029), NASA Image and Video Library (the Long Duration Exposure Facility on Columbia's robotic arm during STS-32, January 1990)
- **Credit:** NASA
- **License:** Public domain (NASA)

### City lights at night from the ISS

- **Files:** `public/blog/direct-to-cell-satellites-phones/hero.webp` and `og.jpg` — the hero of
  "Can satellites connect directly to your phone? How it works"
- **Source:** [iss070e062746](https://images.nasa.gov/details/iss070e062746), NASA Image and Video Library (January 2024)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Van Allen Probes in the radiation belts

- **Files:** `public/blog/van-allen-belts-satellites/hero.webp` and `og.jpg` — the hero of
  "What are the Van Allen belts? Altitude, risks and satellites"
- **Source:** [The Van Allen Probes Explore the Earth's Radiation Belts](https://svs.gsfc.nasa.gov/3951/), NASA Scientific Visualization Studio (SVS 3951)
- **Credit:** NASA's Scientific Visualization Studio
- **License:** Public domain (NASA)

### The ISS from a departing Crew Dragon

- **Files:** `public/blog/iss-retirement-deorbit-2030/hero.webp` and `og.jpg` — the hero of
  "When will the ISS be retired? Deorbit plan and what's next"
- **Source:** [iss066e081189](https://images.nasa.gov/details/iss066e081189), NASA Image and Video Library (the Crew-2 flyaround, 8 November 2021)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Star trails from the ISS

- **Files:** `public/blog/how-do-satellites-stay-in-orbit/hero.webp` and `og.jpg` — the hero of
  "How do satellites stay in orbit? Speed, drag and fuel"
- **Source:** [iss073e0427643](https://images.nasa.gov/details/iss073e0427643), NASA Image and Video Library (circular arcs of star trails viewed from the station, July 2025)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Hurricane Helene from the ISS

- **Files:** `public/blog/weather-satellites-how-they-work/hero.webp` and `og.jpg` — the hero of
  "How do weather satellites work? Orbits, sensors and data"
- **Source:** [iss072e001649](https://images.nasa.gov/details/iss072e001649), NASA Image and Video Library (25 September 2024)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Europa Clipper unboxed at Kennedy

- **Files:** `public/blog/where-is-europa-clipper/hero.webp` and `og.jpg` — the hero of
  "Where is Europa Clipper now? Distance and the Earth flyby"
- **Source:** [KSC-20240528-PH-KLS01_0036](https://images.nasa.gov/details/KSC-20240528-PH-KLS01_0036), NASA Image and Video Library (28 May 2024)
- **Credit:** NASA/Kim Shiflett
- **License:** Public domain (NASA)

### Parker Solar Probe launch

- **Files:** `public/blog/parker-solar-probe-speed/hero.webp` and `og.jpg` — the hero of
  "How fast is the Parker Solar Probe? Top speed and orbit"
- **Source:** [NHQ201808120013](https://images.nasa.gov/details/NHQ201808120013), NASA Image and Video Library (12 August 2018)
- **Credit:** NASA/Bill Ingalls
- **License:** Public domain (NASA)

### New Horizons launch

- **Files:** `public/blog/where-is-new-horizons/hero.webp` and `og.jpg` — the hero of
  "Where is New Horizons now? Distance, speed and what's next"
- **Source:** [KSC-06pd0082](https://images.nasa.gov/details/KSC-06pd0082), NASA Image and Video Library (19 January 2006)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Earth from DSCOVR near L1

- **Files:** `public/blog/lagrange-points-explained/hero.webp` and `og.jpg` — the hero of
  "What are Lagrange points? L1 to L5 and what orbits there"
- **Source:** [GSFC_20171208_Archive_e000669](https://images.nasa.gov/details/GSFC_20171208_Archive_e000669), NASA Image and Video Library (a frame from DSCOVR's EPIC camera)
- **Credit:** NASA/NOAA
- **License:** Public domain (NASA)

### Earth's limb with a crescent Moon

- **Files:** `public/blog/where-does-space-begin-karman-line/hero.webp` and `og.jpg` — the hero of
  "Where does space begin? The Kármán line, 100 km or 80 km"
- **Source:** [Earth's Limb with a Crescent Moon](https://earthobservatory.nasa.gov/images/150240/earths-limb-with-a-crescent-moon), NASA Earth Observatory (astronaut photograph iss066e086970)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Florida at night from the ISS

- **Files:** `public/blog/amazon-kuiper-leo-satellites/hero.webp` and `og.jpg` — the hero of
  "How many Amazon Kuiper satellites are in orbit? Leo's fleet"
- **Source:** [iss072e189824](https://images.nasa.gov/details/iss072e189824), NASA Image and Video Library (17 November 2024)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Southeast China at night from the ISS

- **Files:** `public/blog/qianfan-guowang-china-megaconstellations/hero.webp` and `og.jpg` — the hero of
  "What are China's Qianfan and Guowang constellations?"
- **Source:** [iss062e081756](https://images.nasa.gov/details/iss062e081756), NASA Image and Video Library (5 March 2020)
- **Credit:** NASA
- **License:** Public domain (NASA)

### CubeSats released from Kibo

- **Files:** `public/blog/types-of-satellites/hero.webp` and `og.jpg` — the hero of
  "What are the different types of satellites? Uses and counts"
- **Source:** [iss068e025834](https://images.nasa.gov/details/iss068e025834), NASA Image and Video Library (2 December 2022)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Geminids Over Kitt Peak National Observatory

- **Files:** `public/blog/geminid-meteor-shower-2026/hero.webp` and `og.jpg` — the hero of
  "When is the Geminid meteor shower 2026? Peak times and Moon"
- **Source:** [Geminids Over Kitt Peak National Observatory](https://noirlab.edu/public/images/iotw2352a/), NOIRLab Image of
  the Week (iotw2352a, December 2023)
- **Credit:** KPNO/NOIRLab/NSF/AURA/R. Sparks (NSF NOIRLab)
- **License:** [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/), per
  [NOIRLab's usage terms](https://noirlab.edu/public/copyright/)
- **Changes:** cropped and re-encoded (WebP, JPEG)

### Diamond ring, 2017 total eclipse

- **Files:** `public/blog/next-total-solar-eclipse-2027/hero.webp` and `og.jpg` — the hero of
  "When is the next total solar eclipse? August 2, 2027"
- **Source:** [AFRC2017-0233-009](https://images.nasa.gov/details/AFRC2017-0233-009), NASA Image and Video Library (21 August 2017)
- **Credit:** NASA/Carla Thomas
- **License:** Public domain (NASA)

### Neptune's south pole after the Voyager 2 flyby

- **Files:** `public/blog/where-is-voyager-2/hero.webp` and `og.jpg` — the hero of
  "Where is Voyager 2 now? Distance, signal time and power"
- **Source:** [PIA01539](https://images.nasa.gov/details/PIA01539), NASA Image and Video Library (Voyager 2, August 1989)
- **Credit:** NASA/JPL
- **License:** Public domain (NASA)

### Storm aurora from the ISS

- **Files:** `public/blog/kp-index-aurora-forecast/hero.webp` and `og.jpg` — the hero of
  "What is the Kp index? How to read an aurora forecast"
- **Source:** [iss074e0150531](https://images.nasa.gov/details/iss074e0150531), NASA Image and Video Library (19 January 2026)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Aurora over Launch Complex 39B

- **Files:** `public/blog/what-causes-the-northern-lights/hero.webp` and `og.jpg` — the hero of
  "What causes the northern lights? Solar wind and colors"
- **Source:** [KSC-20251111-PH-JBS01_0011](https://images.nasa.gov/details/KSC-20251111-PH-JBS01_0011), NASA Image and Video Library (11 November 2025)
- **Credit:** NASA/Ben Smegelsky
- **License:** Public domain (NASA)

### Meteor over Spruce Knob

- **Files:** `public/blog/leonid-meteor-shower-2026/hero.webp` and `og.jpg` — the hero of
  "Leonid meteor shower 2026: peak time, Moon and next storm"
- **Source:** [NHQ202508030001](https://images.nasa.gov/details/NHQ202508030001), NASA Image and Video Library (3 August 2025)
- **Credit:** NASA/Bill Ingalls
- **License:** Public domain (NASA)

### Hubble's Mars near the 2016 opposition

- **Files:** `public/blog/mars-closest-approach-2027/hero.webp` and `og.jpg` — the hero of
  "When is Mars closest to Earth? 2027 date and distance"
- **Source:** [GSFC_20171208_Archive_e000332](https://images.nasa.gov/details/GSFC_20171208_Archive_e000332), NASA Image and Video Library (Hubble Space Telescope, 12 May 2016)
- **Credit:** NASA
- **License:** Public domain (NASA)

### Supermoon over Washington

- **Files:** `public/blog/how-far-away-is-the-moon/hero.webp` and `og.jpg` — the hero of
  "How far away is the Moon? Distance, perigee and supermoons"
- **Source:** [NHQ201712030001](https://images.nasa.gov/details/NHQ201712030001), NASA Image and Video Library (3 December 2017)
- **Credit:** NASA/Bill Ingalls
- **License:** Public domain (NASA)

### Falcon 9 landing after Crew-13

- **Files:** `public/blog/falcon-9-booster-reuse/hero.webp` and `og.jpg` — the hero of
  "How many times can a Falcon 9 booster fly? The reuse record"
- **Source:** [NHQ20261001_admin_0012](https://images.nasa.gov/details/NHQ20261001_admin_0012), NASA Image and Video Library (1 October 2026)
- **Credit:** NASA/John Kraus
- **License:** Public domain (NASA)

### Super Heavy V3 wind-tunnel model

- **Files:** `public/blog/what-is-spacex-starship/hero.webp` and `og.jpg` — the hero of
  "What is SpaceX Starship? Size, engines and flight record"
- **Source:** [ACD25-0156-021](https://images.nasa.gov/details/ACD25-0156-021), NASA Image and Video Library (31 July 2025; a 1.2% scale model tested at NASA Ames)
- **Credit:** NASA/Brandon Torres
- **License:** Public domain (NASA)

### Debris impact on Discovery's window

- **Files:** `public/blog/kessler-syndrome-space-debris/hero.webp` and `og.jpg` — the hero of
  "What is Kessler syndrome? How a space debris cascade works"
- **Source:** [sts070-309-026](https://images.nasa.gov/details/sts070-309-026), NASA Image and Video Library (STS-70, July 1995)
- **Credit:** NASA
- **License:** Public domain (NASA)

### OneWeb satellite model at Kennedy

- **Files:** `public/blog/what-is-oneweb/hero.webp` and `og.jpg` — the hero of
  "What is OneWeb? Owner, satellite count and orbits"
- **Source:** [KSC-20170316-PH_KLS01_0007](https://images.nasa.gov/details/KSC-20170316-PH_KLS01_0007), NASA Image and Video Library (16 March 2017)
- **Credit:** NASA/Kim Shiflett
- **License:** Public domain (NASA)

## Typeface

### D-DIN (Datto Inc.)

`public/fonts/D-DIN.woff2` and `D-DIN-Bold.woff2` — the typeface spacex.com is set in
(owner direction 2026-09-04: match SpaceX's font, colour, size and style). Copyright (c) 2017
Datto Inc., Reserved Font Name "D-DIN", licensed under the SIL Open Font License 1.1; the full
licence text ships alongside in `public/fonts/OFL.txt`. Self-hosted from this origin only.
