starfield 0.18.2

Astronomical calculations, catalogs, and data clients
Documentation

Starfield

Astronomical calculations, catalogs, JPL clients, and planetary surface data.

starfield = { version = "0.18", features = ["catalogs", "jpl"] }

Core APIs retain their paths (starfield::planetlib, starfield::time, etc.). Enable catalogs, jpl, or surfaces for groups, or individual sources such as hipparcos, gaia, horizons, or solar-spectrum. gaia-all enables all Gaia releases; radial-profiles opts into NSA's larger per-entry arrays.

See the migration guide.

Version 0.18 consolidates the datasource packages into starfield-catalogs, starfield-jpl, and starfield-surfaces, preserving the facade paths above. Old per-source package users should migrate to facade features.

Browser WebAssembly

For wasm32-unknown-unknown, use the portable core without native data services:

starfield = { version = "0.18.2", default-features = false }

Coordinate and time calculations and in-memory parsers are available. For example, starfield::jplephem::spk::SPK::from_bytes accepts an ephemeris downloaded by the host. The JavaScript entropy backend is selected automatically for this target. The datastore default and network datasource features remain native-only; filesystem caches and memory-mapped file APIs are not browser storage APIs. Blocking download implementations return an unsupported-operation error on WASM. Fetch data asynchronously in the host and pass the bytes into Rust instead.