{
 "v": 1,
 "fetched": "2026-10-06",
 "items": [
  {
   "id": "svs-lroc-color",
   "name": "NASA SVS CGI Moon Kit: LROC WAC colour with polar fill (lroc_color_poles_16k.tif)",
   "url": "https://svs.gsfc.nasa.gov/vis/a000000/a004700/a004720/lroc_color_poles_16k.tif",
   "credit": "NASA Scientific Visualization Studio / LROC (Arizona State University) / Ernie Wright",
   "licence": "Public domain (US Government work, NASA / USGS)",
   "fetched": "2026-10-06",
   "transform": "TIFF 16384x8192 RGB uint8, equirectangular, centred on lon 0 (Tycho at x = 0.469 of the width), so x=0 is already lon -180: no roll. Area-reduced (cv2 INTER_AREA) to 8192x4096. Tone: luminance (channel mean) stretched between its 0.5 and 99.7 percentiles (raw 66 and 217) onto 44..242 with gamma 0.85, chroma kept, warm-grey multiply (R x1.035, B x0.965). The WAC product is a smooth polar fill beyond about 66 deg latitude: there the luminance is modulated by LOLA hillshade (exaggeration 3, weight ramps 0 -> 0.5 between 66 and 76 deg latitude) so the caps show relief instead of blur; those pixels are invented fill, not imagery. 4K and 2K are Lanczos reductions. Encoded WebP q72 (8K), q74 (4K) and JPEG to meet the CONTRACT size budgets. The poster and og image are orthographic renders of the 4K map (centre 6 N 4 W) with soft lighting; map-2k.jpg is the 2K colour times a soft LOLA hillshade (exaggeration 4).",
   "used": [
    "assets/tex/color-2k.jpg",
    "assets/tex/color-4k.webp",
    "assets/tex/color-4k.jpg",
    "assets/tex/color-8k.webp",
    "assets/tex/color-8k.jpg",
    "assets/fallback/poster.jpg",
    "assets/fallback/map-2k.jpg",
    "assets/og.jpg"
   ]
  },
  {
   "id": "svs-ldem",
   "name": "NASA SVS CGI Moon Kit: LOLA LDEM 16 ppd (ldem_16.tif) and LDEM 64 ppd (ldem_64.tif)",
   "url": "https://svs.gsfc.nasa.gov/vis/a000000/a004700/a004720/ldem_16.tif",
   "credit": "NASA Goddard / LRO LOLA science team, via NASA SVS (Ernie Wright)",
   "licence": "Public domain (US Government work, NASA / USGS)",
   "fetched": "2026-10-06",
   "transform": "float32 TIFF, kilometres relative to the 1737.4 km sphere, same grid and longitude origin as the colour map (global minimum sits at -70.4, -172.5): no roll. ldem_16 (5760x2880) gives an area-averaged 2048x1024 map (elev-2k.png, h_m = (R*256+G) - 12000, B = 0) whose range is -8698 to +10513 m; elev-1k.png is the exact 2x2 integer mean. The full-resolution ldem_64 (23040x11520, downloaded only to read the true extremes) ranges from -9114.5 m (-70.37, -172.49, Antoniadi floor) to +10757 m (5.43, -158.63). The 16 ppd source itself spans -8981.5 to +10685.5 m.",
   "used": [
    "assets/tex/elev-2k.png",
    "assets/tex/elev-1k.png",
    "assets/fallback/map-2k.jpg"
   ]
  },
  {
   "id": "iau-moon-nomenclature",
   "name": "IAU Gazetteer of Planetary Nomenclature, Moon center points (WGPSN)",
   "url": "https://asc-planetarynames-data.s3.us-west-2.amazonaws.com/MOON_nomenclature_center_pts.zip",
   "credit": "IAU Working Group for Planetary System Nomenclature / USGS Astrogeology",
   "licence": "Public domain / IAU nomenclature, free to use with credit",
   "fetched": "2026-10-06",
   "transform": "Shapefile attributes read from the DBF. Satellite-crater letters (7,064 rows), Statio (landing sites), astronaut-named points and albedo features (except Reiner Gamma) were dropped. Longitudes converted from 0..360 east to -180..180. Kept every Mare, Oceanus, Lacus, Sinus and Palus (class region), five basin craters as regions (Apollo, Korolev, Hertzsprung, Bailly, Schickard), the landmark list in tools/landmarks.json, the observing targets in data/observe.json that are under 20 km, and every other feature with diameter >= 20 km. Origin text trimmed to 140 characters and folded to ASCII.",
   "used": [
    "data/features.json"
   ]
  },
  {
   "id": "mission-facts",
   "name": "Landing dates, coordinates, crews, EVA hours and sample masses",
   "url": "https://lroc.im-ldi.com/data/support/downloads/2016_LROC_Coordinates_of_Robotic_Spacecraft.pdf",
   "credit": "LROC / Arizona State University 2016 robotic-spacecraft coordinate table; NASA NSSDCA; Wikipedia; LROC site-identification posts",
   "licence": "Facts; citations only",
   "fetched": "2026-10-06",
   "transform": "Hand-curated in tools/missions-src.json and normalised by tools/build-missions.py. Landing coordinates are LROC-published where they exist (Surveyor, Luna 16/17/20/21/24, Lunokhod rest positions, Chang'e 3/Yutu, Apollo, Chandrayaan-2/3, SLIM, IM-1, IM-2, Blue Ghost, Beresheet, Hakuto-R M1/M2, Luna 25 from LROC posts or NASA releases); rows marked approx (Luna 2, 9, 13, LCROSS, Yutu-2, Pragyan) use Wikipedia/NSSDCA coordinates or the lander position. Apollo EVA hours are NSSDCA hatch-open durations; Apollo 14 and 17 sample masses use the NSSDCA values (42.28 and 110.52 kg). Longitudes converted to -180..180 east. Dates are UTC. No other landing or impact attempt between 2025-04 and 2026-10 was found besides Hakuto-R Mission 2 (2025-06-05).",
   "used": [
    "data/missions.json"
   ]
  },
  {
   "id": "apollo-traverses",
   "name": "LROC / ASU Apollo traverse and station GIS products, Lunokhod, Chang'e and Chandrayaan route data",
   "url": "https://wms.lroc.asu.edu/apollo",
   "credit": "LROC / Arizona State University; Karachevtseva et al. (Lunokhod); Chinese and Indian mission teams",
   "licence": "Public data; citations only",
   "fetched": "2026-10-06",
   "transform": "See the src field of each item in data/traverses.json for the exact product and the derivation. Polylines are in planetocentric degrees, east -180..180, six decimals; km is the haversine length on R = 1737.4 km.",
   "used": [
    "data/traverses.json"
   ]
  },
  {
   "id": "observe-selection",
   "name": "Observing targets (selection guide: Lunar 100, Charles Wood, Sky & Telescope)",
   "url": "https://skyandtelescope.org/observing/the-lunar-100/",
   "credit": "Selection after the Lunar 100 idea; every description is original text",
   "licence": "Own text; selection only",
   "fetched": "2026-10-06",
   "transform": "tools/build-observe.py: 99 near-side targets plus one Apollo-site row. days = [morning, evening] days after new Moon when the feature is near the terminator: morning = (90 - lonE) / 12.19, evening = morning + 14.77, clamped 0..29.5; best \"full\" targets (ray craters, Aristarchus, Reiner Gamma) carry days [13.5, 16.0]. Tier is the smallest instrument that shows the feature in good conditions.",
   "used": [
    "data/observe.json"
   ]
  }
 ]
}