Space Data Atlas

Challenges

Build a Junior Astronaut Mission Trainer

Beginner/Youth, Intermediate. Games, Planets & Moons, Software, Space Exploration, Sun.

Build a game or app where students run a lunar or Martian outpost and balance life support, radiation shielding, power and food, so they feel the trade-offs that make or break a mission.

Read the official challenge on spaceappschallenge.org

No NASA dataset gives life-support numbers directly; cite NTRS reports for any figures you use.

Your first hour

  1. List the resources your outpost tracks (power, oxygen, water, food, radiation dose) and the rules that link them.
  2. Use the Moon Trek illumination layer and DONKI particle events as real inputs for power and radiation.
  3. Grab a lander or habitat model from NASA 3D Resources so the game has real hardware on screen.

Suggested datasets

In order of how useful they are likely to be. These are suggestions, not the official resource list.

Moon Trek WMTS: South Pole Illumination and Earth Visibility

NASA Solar System Treks (JPL)

No loginWorks in browser

South polar tile layers from LRO: WAC percentage-based illumination (WAC_POLE_ILL_PCT_SOUTH_100M) and LOLA average Earth visibility (AVGVISIB_85S_060M_201608_EARTH_SP). Together they show where a lander gets sunlight for power and line of sight to Earth for communication.

endpoint https://trek.nasa.gov/tiles/Moon/SP/WAC_POLE_ILL_PCT_SOUTH_100M/1.0.0/WMTSCapabilities.xml

DONKI Space Weather Event API

NASA CCMC (Goddard)

No loginWorks in browser

JSON records of solar flares, coronal mass ejections and solar energetic particle events, the space weather that drives astronaut radiation exposure. Queries are limited to 60-day windows.

endpoint https://ccmc.gsfc.nasa.gov/DONKI-API/get/SEP

NASA 3D Resources

NASA (GitHub nasa/NASA-3D-Resources)

No loginWorks in browser

Free 3D models of NASA spacecraft, landers, rovers and asteroids, mostly as STL and GLB files. Ready-made assets for games, trainers and storytelling pages.

endpoint https://api.github.com/repos/nasa/NASA-3D-Resources/contents/3D%20Models

NASA Image and Video Library API

NASA

No loginWorks in browser

Search API over NASA's public photos, videos and audio, with no key and open CORS. Good for mission artwork, historical hardware photos and game assets.

endpoint https://images-api.nasa.gov/search

Mars Trek WMTS Layers (CTX Global Mosaic, MOLA)

NASA Solar System Treks (JPL)

No loginWorks in browser

Mars basemaps as WMTS tiles with open CORS, including the global 5 m CTX mosaic (CTX_beta01_uncontrolled_5m_Caltech) and MOLA color hillshade (Mars_MGS_MOLA_ClrShade_merge_global_463m). Stack them to plan a route and read terrain.

endpoint https://trek.nasa.gov/tiles/Mars/EQ/CTX_beta01_uncontrolled_5m_Caltech/1.0.0/WMTSCapabilities.xml

Starter code

Search NASA photos in the browserJavaScript
// No key, CORS enabled: works directly in the browser
const q = encodeURIComponent("Apollo 15 lunar roving vehicle");
const res = await fetch(`https://images-api.nasa.gov/search?q=${q}&media_type=image`);
const { collection } = await res.json();
console.log("hits:", collection.metadata.total_hits);
for (const item of collection.items.slice(0, 5)) {
  const meta = item.data[0];
  const thumb = item.links?.[0]?.href;
  console.log(meta.nasa_id, "|", meta.title, "|", thumb);
}
Recent solar particle eventsJavaScript
// Solar energetic particle events (a radiation hazard for crews).
// No key; CORS enabled; date window must be 60 days or less.
const url = "https://ccmc.gsfc.nasa.gov/DONKI-API/get/SEP" +
  "?startDate=2026-08-06&endDate=2026-10-04";
const events = await fetch(url).then((r) => r.json());
console.log("SEP events:", events.length);
for (const e of events) {
  const instruments = e.instruments.map((i) => i.displayName).join(", ");
  console.log(e.eventTime, "|", instruments);
}
// Other event types: replace SEP with FLR (flares) or CME.
Fetch a south pole illumination tileJavaScript
// Read the WMTS capabilities for the lunar south pole illumination layer,
// then fetch one tile. Moon Trek tiles send CORS headers.
const base = "https://trek.nasa.gov/tiles/Moon/SP/WAC_POLE_ILL_PCT_SOUTH_100M/1.0.0";
const xml = await fetch(`${base}/WMTSCapabilities.xml`).then((r) => r.text());
const template = xml.match(/template="([^"]+)"/)[1];
const matrixSet = xml.match(/<TileMatrixSet>([^<]+)<\/TileMatrixSet>/)[1];
console.log("tile template:", template);

const tileUrl = template
  .replace("{Style}", "default").replace("{TileMatrixSet}", matrixSet)
  .replace("{TileMatrix}", "0").replace("{TileRow}", "0").replace("{TileCol}", "0");
const tile = await fetch(tileUrl);
console.log(tile.status, tile.headers.get("content-type"), tileUrl);
// Earth visibility layer: swap the path to AVGVISIB_85S_060M_201608_EARTH_SP

Related 2025 winners

Matched by theme. Study how they scoped the problem.

NASA's 2025 winners announcement