Star 历史趋势
数据来源: GitHub API · 生成自 Stargazers.cn
README.md

What is Terra Watch?

Terra Watch is an open-source, browser-based mission control for planet Earth. It pulls live data from NASA EONET, USGS, and NOAA to show every active wildfire, earthquake, volcano, flood, and storm on a photorealistic 3D globe — right now.

Open it and within seconds you'll see 500+ active events pulsing across the Earth. Click any event to see satellite imagery, magnitude history, population impact, and live news. Rewind history back to the year 2000 and watch two decades of disasters play out.

No install. No API keys. No backend. Runs entirely in your browser.


✨ Features

FeatureDescription
🌍 3D Satellite GlobePhotorealistic Earth using CesiumJS with Esri World Imagery — looks like Google Earth
🔴 Live Event MarkersPulsing, animated markers for wildfires, earthquakes, volcanoes, floods, storms, drought, and sea ice
📊 Live DashboardReal-time count of active events by category, most severe event, affected countries
🔍 Event Detail PanelClick any event for magnitude history, source link, population impact estimate, and news headlines
⏱️ Time MachineScrubber from 2000 to today — replay any historical disaster period
🛰️ NASA GIBS LayersToggle real NASA satellite imagery: true colour, thermal anomalies, aerosol/smoke
👥 Population OverlayHeatmap showing population density — see how many people are near each disaster
🤖 Ask the GlobeAI-powered chat: ask questions about what's happening on Earth right now
🔗 Shareable URLsEvery view is encoded in the URL — share exactly what you're seeing
📱 Mobile FriendlyWorks on phone and tablet — touch to rotate, pinch to zoom

📸 Screenshots

image

🗺️ How It Works

Terra Watch runs entirely as a static site deployed on GitHub Pages. It calls NASA, USGS, and NOAA APIs directly from your browser — no backend server required.

Your browser
  ├── NASA EONET v3        → wildfires, volcanoes, floods, storms, sea ice
  ├── USGS Earthquake Feed → real-time global earthquakes (updated every 60s)
  ├── NOAA NHC             → Atlantic & Pacific tropical storms
  ├── NASA GIBS WMTS       → daily satellite imagery tiles
  ├── GDELT                → geo-tagged news headlines
  └── Wikipedia API        → region and event summaries

All rendered on a CesiumJS 3D globe with Esri World Imagery as the basemap.


🚀 Quick Start

Just want to use it? → Open the live demo — nothing to install.

Want to run it locally?

Since Terra Watch is a pre-built static site, just clone the repo and serve it with any static file server:

# Clone the repo
git clone https://github.com/cifertech/Terra-Watch.git
cd Terra-Watch

# Serve locally (any of these work)
npx serve .
python3 -m http.server 8080
# Then open http://localhost:8080

⚠️ Opening index.html directly as a file:// URL won't work due to browser security restrictions on local files. Use a local server as shown above.


🗄️ Data Sources

All data is free and open. No API keys required.

SourceDataUpdate Frequency
NASA EONET v3Wildfires, volcanoes, floods, storms, drought, sea iceEvery 5 min
USGS Earthquake HazardsGlobal earthquakes M0+Every 60 sec
NOAA National Hurricane CenterAtlantic & Pacific tropical stormsEvery 10 min
NASA GIBS WMTSSatellite imagery tilesDaily
GDELTNews headlines tagged by locationContinuous
Wikipedia APIRegion and event summariesOn demand

🗂️ Repository Structure

Terra-Watch/
  ├── index.html          # App entry point
  ├── assets/
  │   ├── index-*.js      # Bundled application (React + all logic)
  │   └── index-*.css     # Bundled styles
  ├── cesium/             # CesiumJS library (self-hosted for GitHub Pages)
  │   ├── Cesium.js
  │   ├── Workers/
  │   ├── Assets/
  │   └── Widgets/
  ├── 404.html            # GitHub Pages SPA fallback
  ├── .nojekyll           # Disables Jekyll processing on GitHub Pages
  └── docs/
      └── demo.gif        # README demo capture

🚢 Deployment

Terra Watch is deployed as a static site on GitHub Pages — no build step needed to deploy since the assets are pre-built and committed.

To deploy your own fork:

  1. Fork this repo on GitHub
  2. Go to Settings → Pages → Source → Deploy from branch
  3. Select main branch, / (root) folder
  4. Click Save — your globe will be live at https://yourusername.github.io/Terra-Watch/

🤝 Contributing

Contributions are welcome! See CONTRIBUTING.md for how to get started.

Ideas for contributions:

  • 🎨 Visual improvements to event markers or the UI
  • 📱 Mobile layout improvements
  • 🌍 New event category support
  • 🐛 Bug fixes and API fallback improvements

📄 License

MIT — free to use, fork, and build on.


Built with ❤️ by cifertech · Powered by NASA open data

Live Demo · Report Bug · Request Feature

关于 About

Real-time 3D globe showing every active natural disaster on Earth, powered by NASA EONET, USGS, and NOAA
cesiumdata-visualizationearthquakeeonetgeospatialglobenasanasa-apinasa-datanatural-disasteropen-sourcereal-timevolcanowebglwildfire

语言 Languages

CSS53.5%
JavaScript45.5%
HTML1.0%

提交活跃度 Commit Activity

代码提交热力图
过去 52 周的开发活跃度
17
Total Commits
峰值: 17次/周
Less
More

核心贡献者 Contributors