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.
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.
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.
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.
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.
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.
// 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.
PureFlow (Brazil), Best Mission Concept, for "Your Home in Space: The Habitat Layout Creator"
Zumorroda-X (Egypt), Art & Technology, for "NASA Farm Navigators"