# Satellite basemap The prototype's photographic basemap is **NASA Blue Marble Shaded Relief and Bathymetry (MODIS)**, obtained through NASA's Global Imagery Browse Services (GIBS). It combines satellite imagery with terrain and ocean-depth shading. It is a static, cloud-free composite, not live imagery or a street/building-resolution aerial survey. ## Offline delivery All raster tiles are included in `public/satellite/`. The browser requests `/satellite/{z}/{x}/{y}.jpg` from the same local server as the application. No mapping subscription, key, external image server, or internet connection is needed to display the prepared basemap. The finite pyramid contains **21,845 tiles totaling 120,147,117 image bytes (114.58 MiB)** across zoom levels 0 through 7, using 256 by 256 pixel JPEGs. The XYZ tile coordinates match Web Mercator / EPSG:3857. Level 7 is approximately 1.22 km per pixel at the equator; ground resolution varies with latitude. Closer camera views enlarge that imagery while vector borders, rivers, and labels remain independent and sharp. Full Web Mercator coverage reaches approximately 85.051129 degrees north and south; it does not include the geographic pole points. The exact tile count, image byte total, level totals, preparation time, and SHA-256 checksum of every tile are recorded in `public/satellite/manifest.json`. All 21,845 saved files were read back and verified against their recorded byte lengths and hashes after preparation. `source-capabilities.xml` preserves NASA's layer and grid declarations at preparation time. This manifest is a snapshot record: the upstream static layer has no immutable revision identifier, and a future rebuild should be reviewed before replacing the checked-in imagery. The renderer covers the unsupported polar interiors beyond 85 degrees with uniform colors sampled from the imagery's edge rows, with a narrow transition from 84.5 degrees. This avoids radial texture streaks from stretching Web Mercator's edge pixels to a point. These small caps are display fills, not satellite observations of the pole points; their uniform surface can be seen in close polar views. Antarctic and Arctic coastlines remain visible outside them. ## Rebuild With Node.js and internet access: ```text node scripts/prepare-satellite.mjs ``` The script resumes an interrupted preparation by retaining valid local JPEGs, limits concurrency to eight requests, validates image responses, and stops if image content exceeds 150 MiB. Normal app startup and production builds do not download imagery. NASA WMTS source template (the service uses **row before column**, while our local filenames use **x before y**): ```text https://gibs.earthdata.nasa.gov/wmts/epsg3857/best/BlueMarble_ShadedRelief_Bathymetry/default/GoogleMapsCompatible_Level8/{z}/{y}/{x}.jpeg ``` ## Attribution and use Credit: **NASA Blue Marble / NASA GIBS**. We acknowledge the use of imagery provided by NASA's Global Imagery Browse Services, part of NASA's Earth Science Data and Information System. NASA's Earthdata guidance permits use of NASA-led mission data under CC0 unless a specific restriction is identified. No third-party restriction is advertised for this Blue Marble layer. Commercial use does not require a paid mapping license. Retain source credit and do not imply NASA endorsement of Muglobe; NASA names and logos are not licensed as Muglobe branding. - [NASA Earthdata data-use and citation guidance](https://www.earthdata.nasa.gov/engage/open-data-services-software/data-use-policy) - [NASA GIBS documentation and acknowledgments](https://nasa-gibs.github.io/gibs-api-docs/) - [GIBS Web Mercator access and coordinate conventions](https://nasa-gibs.github.io/gibs-api-docs/access-basics/) - [NASA Blue Marble imagery background](https://science.nasa.gov/earth/earth-observatory/blue-marble-next-generation/base-topography-bathymetry/) - [Live WMTS capabilities](https://gibs.earthdata.nasa.gov/wmts/epsg3857/best/wmts.cgi?SERVICE=WMTS&REQUEST=GetCapabilities)