# Hotplump Observatory — sources and limits

Implementation reviewed September 13, 2026. This is an educational visualization, not a navigation, eclipse-prediction, or live satellite-tracking tool.

## Positions, orientation and time

- [Astronomy Engine 2.1.19](https://github.com/cosinekitty/astronomy): bundled JavaScript library, MIT license by Don Cross. Computes heliocentric planetary positions, geocentric lunar position, IAU body orientation, sidereal time, lunar illumination and sunrise/sunset. Its license is included in the source header.
- [JPL approximate planetary elements](https://ssd.jpl.nasa.gov/planets/approx_pos.html): orbit guides use elements and their secular rates. Guides represent approximate ellipses at the selected epoch, while bodies use Astronomy Engine. The Pluto guide uses the published 1800–2050 element fit; beyond 2050 its guide is indicative.
- [USNO sidereal time](https://aa.usno.navy.mil/faq/GAST): Earth’s rotation must be referred to its equatorial frame; civil timezone offsets are not rotation angles.
- City clocks use browser IANA timezone data through `Intl.DateTimeFormat`. Live clocks derive from the device clock; device-clock errors carry through. Pausing or visiting sunrise/sunset enters a labeled preview. Sunrise/sunset uses the selected city’s local calendar day and standard atmospheric assumptions; terrain and local weather are not modeled.
- The interface bounds dates to 1800–2099. Numerical model accuracy varies by body and date; no claim of exact ephemerides is made.
- The Moon’s distance, phase, and orientation are computed. Its displayed separation is enlarged and planetary sizes are exaggerated, so visible overlaps are not eclipse predictions.
- Venus, Uranus and Pluto use signed IAU prime-meridian rotation and north-pole conventions; retrograde rotation is not applied twice.
- ISS and Tiangong are clearly illustrative. Their schematic equatorial orbits share simulation time but are not derived from current orbital elements. Comets use fixed, approximate two-body conics, including hyperbolic solutions; historical comet elements and sizes are not live measurements. ISON is a historical path, not a surviving object.

## Sky

- [D3 Celestial data](https://github.com/ofrohn/d3-celestial), distributed with the included BSD license in `data/LICENSE-stars`.
- `stars.6.json`: XHIP, An Extended Hipparcos Compilation, Anderson & Francis (2012), through D3 Celestial. J2000 angular positions, magnitude and B−V color index. Faint stars are reduced on small devices. Proper motion, stellar parallax and atmospheric scintillation are not modeled.
- `milky-way.json`: Milky Way Outline Catalog by Jose R. Vieira, distributed through D3 Celestial; five mapped brightness contours. Softening and intensity are aesthetic choices. This is a mapped outline rendering, not a calibrated photographic exposure.
- All sky layers share the same fixed J2000-to-ecliptic transform and follow camera translation. There are no randomly placed galaxies or fictitious stellar anchors.

## Imagery and facts

- Existing planetary surface maps: [Solar System Scope](https://www.solarsystemscope.com/textures/), CC BY 4.0. Existing Saturn/Uranus maps retained. Source maps are composites and do not imply current weather or exact prime-meridian registration for every body.
- Earth night lights: [NASA Earth Observatory, Earth at Night / Black Marble 2016](https://earthobservatory.nasa.gov/features/NightLights). Original `BlackMarble_2016_3km.jpg` from NASA Earth Observatory image record 144898, downsampled to 4096×2048 for the web. Night lights are a historical composite, not live city activity.
- Earth clouds are a static texture animated subtly for presentation; cloud coverage and shadows are illustrative. Ocean reflectivity and atmospheric scattering are approximations.
- The Sun’s procedural granulation and corona are artistic, not live solar observations. Planet surfaces retain subtle fill light for readability. Colors are display-rendered, not calibrated photometry.
- Stable educational facts are curated in `planet-facts.js`: [NASA Solar System](https://science.nasa.gov/solar-system/), [NASA planetary facts](https://science.nasa.gov/solar-system/planets/), [NASA Olympus Mons](https://www.nasa.gov/missions/odyssey/nasas-mars-odyssey-captures-huge-volcano-nears-100000-orbits/). Sidereal rotation is distinguished from solar-day length. Moon-count claims are omitted because discoveries and confirmation status change.

## Presentation and performance

Distance mapping is `26 × AU^0.55`; planet radii are independently compressed. Orbit shapes are visually distorted by this radial mapping. Facts retain physical distances and diameters.

One high-resolution planetary surface is resident at a time. Low-resolution maps are retained for fallback; Earth clouds remain 2K, and night lights are 4K. Desktop rendering adapts resolution to measured frame time. GPU memory and performance vary by browser and device.
