Skip to content

BigBodyCobain/Shadowbroker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

48 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›°οΈ S H A D O W B R O K E R

Global Threat Intercept β€” Real-Time Geospatial Intelligence Platform


Shadowbroker1 ShadowBroker is a real-time, multi-domain OSINT dashboard that aggregates live data from dozens of open-source intelligence feeds and renders them on a unified dark-ops map interface. It tracks aircraft, ships, satellites, earthquakes, conflict zones, CCTV networks, GPS jamming, and breaking geopolitical events β€” all updating in real time.

Built with Next.js, MapLibre GL, FastAPI, and Python, it's designed for analysts, researchers, and enthusiasts who want a single-pane-of-glass view of global activity.


Interesting Use Cases

  • Track private jets of billionaires
  • Monitor satellites passing overhead and see high-resolution satellite imagery
  • Nose around local emergency scanners
  • Watch naval traffic worldwide
  • Detect GPS jamming zones
  • Follow earthquakes and disasters in real time

⚑ Quick Start (Docker or Podman)

git clone https://github.com/BigBodyCobain/Shadowbroker.git
cd Shadowbroker
./compose.sh up -d

Open http://localhost:3000 to view the dashboard! (Requires Docker or Podman)

compose.sh auto-detects docker compose, docker-compose, podman compose, and podman-compose. If both runtimes are installed, you can force Podman with ./compose.sh --engine podman up -d. Do not append a trailing . to that command; Compose treats it as a service name.


✨ Features

πŸ›©οΈ Aviation Tracking

  • Commercial Flights β€” Real-time positions via OpenSky Network (~5,000+ aircraft)
  • Private Aircraft β€” Light GA, turboprops, bizjets tracked separately
  • Private Jets β€” High-net-worth individual aircraft with owner identification
  • Military Flights β€” Tankers, ISR, fighters, transports via adsb.lol military endpoint
  • Flight Trail Accumulation β€” Persistent breadcrumb trails for all tracked aircraft
  • Holding Pattern Detection β€” Automatically flags aircraft circling (>300Β° total turn)
  • Aircraft Classification β€” Shape-accurate SVG icons: airliners, turboprops, bizjets, helicopters
  • Grounded Detection β€” Aircraft below 100ft AGL rendered with grey icons

🚒 Maritime Tracking

  • AIS Vessel Stream β€” 25,000+ vessels via aisstream.io WebSocket (real-time)
  • Ship Classification β€” Cargo, tanker, passenger, yacht, military vessel types with color-coded icons
  • Carrier Strike Group Tracker β€” All 11 active US Navy aircraft carriers with OSINT-estimated positions
    • Automated GDELT news scraping for carrier movement intelligence
    • 50+ geographic region-to-coordinate mappings
    • Disk-cached positions, auto-updates at 00:00 & 12:00 UTC
  • Cruise & Passenger Ships β€” Dedicated layer for cruise liners and ferries
  • Clustered Display β€” Ships cluster at low zoom with count labels, decluster on zoom-in

πŸ›°οΈ Space & Satellites

  • Orbital Tracking β€” Real-time satellite positions via CelesTrak TLE data + SGP4 propagation (2,000+ active satellites, no API key required)
  • Mission-Type Classification β€” Color-coded by mission: military recon (red), SAR (cyan), SIGINT (white), navigation (blue), early warning (magenta), commercial imaging (green), space station (gold)

🌍 Geopolitics & Conflict

  • Global Incidents β€” GDELT-powered conflict event aggregation (last 8 hours, ~1,000 events)
  • Ukraine Frontline β€” Live warfront GeoJSON from DeepState Map
  • SIGINT/RISINT News Feed β€” Real-time RSS aggregation from multiple intelligence-focused sources
  • Region Dossier β€” Right-click anywhere on the map for:
    • Country profile (population, capital, languages, currencies, area)
    • Head of state & government type (Wikidata SPARQL)
    • Local Wikipedia summary with thumbnail

πŸ›°οΈ Satellite Imagery

  • NASA GIBS (MODIS Terra) β€” Daily true-color satellite imagery overlay with 30-day time slider, play/pause animation, and opacity control (~250m/pixel)
  • High-Res Satellite (Esri) β€” Sub-meter resolution imagery via Esri World Imagery β€” zoom into buildings and terrain detail (zoom 18+)
  • Sentinel-2 Intel Card β€” Right-click anywhere on the map for a floating intel card showing the latest Sentinel-2 satellite photo with capture date, cloud cover %, and clickable full-resolution image (10m resolution, updated every ~5 days)
  • SATELLITE Style Preset β€” Quick-toggle high-res imagery via the STYLE button (DEFAULT β†’ SATELLITE β†’ FLIR β†’ NVG β†’ CRT)

πŸ“» Software-Defined Radio (SDR)

  • KiwiSDR Receivers β€” 500+ public SDR receivers plotted worldwide with clustered amber markers
  • Live Radio Tuner β€” Click any KiwiSDR node to open an embedded SDR tuner directly in the SIGINT panel
  • Metadata Display β€” Node name, location, antenna type, frequency bands, active users

πŸ“· Surveillance

  • CCTV Mesh β€” 2,000+ live traffic cameras from:
    • πŸ‡¬πŸ‡§ Transport for London JamCams
    • πŸ‡ΊπŸ‡Έ Austin, TX TxDOT
    • πŸ‡ΊπŸ‡Έ NYC DOT
    • πŸ‡ΈπŸ‡¬ Singapore LTA
    • Custom URL ingestion
  • Feed Rendering β€” Automatic detection & rendering of video, MJPEG, HLS, embed, satellite tile, and image feeds
  • Clustered Map Display β€” Green dots cluster with count labels, decluster on zoom

πŸ“‘ Signal Intelligence

  • GPS Jamming Detection β€” Real-time analysis of aircraft NAC-P (Navigation Accuracy Category) values
    • Grid-based aggregation identifies interference zones
    • Red overlay squares with "GPS JAM XX%" severity labels
  • Radio Intercept Panel β€” Scanner-style UI for monitoring communications

🌐 Additional Layers

  • Earthquakes (24h) β€” USGS real-time earthquake feed with magnitude-scaled markers
  • Day/Night Cycle β€” Solar terminator overlay showing global daylight/darkness
  • Global Markets Ticker β€” Live financial market indices (minimizable)
  • Measurement Tool β€” Point-to-point distance & bearing measurement on the map
  • LOCATE Bar β€” Search by coordinates (31.8, 34.8) or place name (Tehran, Strait of Hormuz) to fly directly to any location β€” geocoded via OpenStreetMap Nominatim

πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                   FRONTEND (Next.js)                   β”‚
β”‚                                                        β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚ MapLibre GL β”‚    β”‚ NewsFeed β”‚    β”‚ Control Panelsβ”‚  β”‚
β”‚  β”‚  2D WebGL   β”‚    β”‚  SIGINT  β”‚    β”‚ Layers/Filtersβ”‚  β”‚
β”‚  β”‚ Map Render  β”‚    β”‚  Intel   β”‚    β”‚ Markets/Radio β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚         β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜          β”‚
β”‚                          β”‚ REST API (60s / 120s)       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚                    BACKEND (FastAPI)                   β”‚
β”‚                          β”‚                             β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚               Data Fetcher (Scheduler)           β”‚  β”‚
β”‚  β”‚                                                  β”‚  β”‚
β”‚  β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚  β”‚
β”‚  β”‚  β”‚ OpenSky  β”‚ adsb.lol β”‚CelesTrak β”‚   USGS    β”‚  β”‚  β”‚
β”‚  β”‚  β”‚ Flights  β”‚ Military β”‚   Sats   β”‚  Quakes   β”‚  β”‚  β”‚
β”‚  β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚  β”‚
β”‚  β”‚  β”‚  AIS WS  β”‚ Carrier  β”‚  GDELT   β”‚   CCTV    β”‚  β”‚  β”‚
β”‚  β”‚  β”‚  Ships   β”‚ Tracker  β”‚ Conflict β”‚  Cameras  β”‚  β”‚  β”‚
β”‚  β”‚  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€  β”‚  β”‚
β”‚  β”‚  β”‚ DeepStateβ”‚   RSS    β”‚  Region  β”‚    GPS    β”‚  β”‚  β”‚
β”‚  β”‚  β”‚ Frontlineβ”‚  Intel   β”‚ Dossier  β”‚  Jamming  β”‚  β”‚  β”‚
β”‚  β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“Š Data Sources & APIs

Source Data Update Frequency API Key Required
OpenSky Network Commercial & private flights ~60s Optional (anonymous limited)
adsb.lol Military aircraft ~60s No
aisstream.io AIS vessel positions Real-time WebSocket Yes
CelesTrak Satellite orbital positions (TLE + SGP4) ~60s No
USGS Earthquake Global seismic events ~60s No
GDELT Project Global conflict events ~6h No
DeepState Map Ukraine frontline ~30min No
Transport for London London CCTV JamCams ~5min No
TxDOT Austin TX traffic cameras ~5min No
NYC DOT NYC traffic cameras ~5min No
Singapore LTA Singapore traffic cameras ~5min Yes
RestCountries Country profile data On-demand (cached 24h) No
Wikidata SPARQL Head of state data On-demand (cached 24h) No
Wikipedia API Location summaries & aircraft images On-demand (cached) No
NASA GIBS MODIS Terra daily satellite imagery Daily (24-48h delay) No
Esri World Imagery High-res satellite basemap Static (periodically updated) No
MS Planetary Computer Sentinel-2 L2A scenes (right-click) On-demand No
KiwiSDR Public SDR receiver locations ~30min No
OSM Nominatim Place name geocoding (LOCATE bar) On-demand No
CARTO Basemaps Dark map tiles Continuous No

πŸš€ Getting Started

🐳 Docker / Podman Setup (Recommended for Self-Hosting)

The repo includes a docker-compose.yml that builds both images locally.

git clone https://github.com/BigBodyCobain/Shadowbroker.git
cd Shadowbroker
# Add your API keys in a repo-root .env file (optional β€” see Environment Variables below)
./compose.sh up -d

Open http://localhost:3000 to view the dashboard.

Deploying publicly or on a LAN? The frontend auto-detects the backend β€” it uses your browser's hostname with port 8000 (e.g. if you visit http://192.168.1.50:3000, API calls go to http://192.168.1.50:8000). No configuration needed for most setups.

If your backend runs on a different port or host (reverse proxy, custom Docker port mapping, separate server), set NEXT_PUBLIC_API_URL:

# Linux / macOS
NEXT_PUBLIC_API_URL=http://myserver.com:9096 docker-compose up -d --build

# Podman (via compose.sh wrapper)
NEXT_PUBLIC_API_URL=http://192.168.1.50:9096 ./compose.sh up -d --build

# Windows (PowerShell)
$env:NEXT_PUBLIC_API_URL="http://myserver.com:9096"; docker-compose up -d --build

# Or add to a .env file next to docker-compose.yml:
# NEXT_PUBLIC_API_URL=http://myserver.com:9096

This is a build-time variable (Next.js limitation) β€” it gets baked into the frontend during npm run build. Changing it requires a rebuild.

If you prefer to call the container engine directly, Podman users can run podman compose up -d, or force the wrapper to use Podman with ./compose.sh --engine podman up -d. Depending on your local Podman configuration, podman compose may still delegate to an external compose provider while talking to the Podman socket.


πŸ“¦ Quick Start (No Code Required)

If you just want to run the dashboard without dealing with terminal commands:

  1. Go to the Releases tab on the right side of this GitHub page.
  2. Download the latest .zip file from the release.
  3. Extract the folder to your computer.
  4. Windows: Double-click start.bat. Mac/Linux: Open terminal, type chmod +x start.sh, and run ./start.sh.
  5. It will automatically install everything and launch the dashboard!

πŸ’» Developer Setup

If you want to modify the code or run from source:

Prerequisites

  • Node.js 18+ and npm β€” nodejs.org
  • Python 3.10, 3.11, or 3.12 with pip β€” python.org (check "Add to PATH" during install)
    • ⚠️ Python 3.13+ may have compatibility issues with some dependencies. 3.11 or 3.12 is recommended.
  • API keys for: aisstream.io (required), and optionally opensky-network.org (OAuth2), lta.gov.sg

Installation

# Clone the repository
git clone https://github.com/your-username/shadowbroker.git
cd shadowbroker/live-risk-dashboard

# Backend setup
cd backend
python -m venv venv
venv\Scripts\activate        # Windows
# source venv/bin/activate   # macOS/Linux
pip install -r requirements.txt   # includes pystac-client for Sentinel-2

# Create .env with your API keys
echo "AIS_API_KEY=your_aisstream_key" >> .env
echo "OPENSKY_CLIENT_ID=your_opensky_client_id" >> .env
echo "OPENSKY_CLIENT_SECRET=your_opensky_secret" >> .env

# Frontend setup
cd ../frontend
npm install

Running

# From the frontend directory β€” starts both frontend & backend concurrently
npm run dev

This starts:

  • Next.js frontend on http://localhost:3000
  • FastAPI backend on http://localhost:8000

πŸŽ›οΈ Data Layers

All layers are independently toggleable from the left panel:

Layer Default Description
Commercial Flights βœ… ON Airlines, cargo, GA aircraft
Private Flights βœ… ON Non-commercial private aircraft
Private Jets βœ… ON High-value bizjets with owner data
Military Flights βœ… ON Military & government aircraft
Tracked Aircraft βœ… ON Special interest watch list
Satellites βœ… ON Orbital assets by mission type
Carriers / Mil / Cargo βœ… ON Navy carriers, cargo ships, tankers
Civilian Vessels ❌ OFF Yachts, fishing, recreational
Cruise / Passenger βœ… ON Cruise ships and ferries
Earthquakes (24h) βœ… ON USGS seismic events
CCTV Mesh ❌ OFF Surveillance camera network
Ukraine Frontline βœ… ON Live warfront positions
Global Incidents βœ… ON GDELT conflict events
GPS Jamming βœ… ON NAC-P degradation zones
MODIS Terra (Daily) ❌ OFF NASA GIBS daily satellite imagery
High-Res Satellite ❌ OFF Esri sub-meter satellite imagery
KiwiSDR Receivers ❌ OFF Public SDR radio receivers
Day / Night Cycle βœ… ON Solar terminator overlay

πŸ”§ Performance

The platform is optimized for handling massive real-time datasets:

  • Gzip Compression β€” API payloads compressed ~92% (11.6 MB β†’ 915 KB)
  • ETag Caching β€” 304 Not Modified responses skip redundant JSON parsing
  • Viewport Culling β€” Only features within the visible map bounds (+20% buffer) are rendered
  • Clustered Rendering β€” Ships, CCTV, and earthquakes use MapLibre clustering to reduce feature count
  • Debounced Viewport Updates β€” 300ms debounce prevents GeoJSON rebuild thrash during pan/zoom
  • Position Interpolation β€” Smooth 10s tick animation between data refreshes
  • React.memo β€” Heavy components wrapped to prevent unnecessary re-renders
  • Coordinate Precision β€” Lat/lng rounded to 5 decimals (~1m) to reduce JSON size

πŸ“ Project Structure

live-risk-dashboard/
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ main.py                     # FastAPI app, middleware, API routes
β”‚   β”œβ”€β”€ carrier_cache.json          # Persisted carrier OSINT positions
β”‚   β”œβ”€β”€ cctv.db                     # SQLite CCTV camera database
β”‚   └── services/
β”‚       β”œβ”€β”€ data_fetcher.py         # Core scheduler β€” fetches all data sources
β”‚       β”œβ”€β”€ ais_stream.py           # AIS WebSocket client (25K+ vessels)
β”‚       β”œβ”€β”€ carrier_tracker.py      # OSINT carrier position tracker
β”‚       β”œβ”€β”€ cctv_pipeline.py        # Multi-source CCTV camera ingestion
β”‚       β”œβ”€β”€ geopolitics.py          # GDELT + Ukraine frontline fetcher
β”‚       β”œβ”€β”€ region_dossier.py       # Right-click country/city intelligence
β”‚       β”œβ”€β”€ radio_intercept.py      # Scanner radio feed integration
β”‚       β”œβ”€β”€ kiwisdr_fetcher.py      # KiwiSDR receiver scraper
β”‚       β”œβ”€β”€ sentinel_search.py      # Sentinel-2 STAC imagery search
β”‚       β”œβ”€β”€ network_utils.py        # HTTP client with curl fallback
β”‚       └── api_settings.py         # API key management
β”‚
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”‚   └── page.tsx            # Main dashboard β€” state, polling, layout
β”‚   β”‚   └── components/
β”‚   β”‚       β”œβ”€β”€ MaplibreViewer.tsx   # Core map β€” 2,000+ lines, all GeoJSON layers
β”‚   β”‚       β”œβ”€β”€ NewsFeed.tsx         # SIGINT feed + entity detail panels
β”‚   β”‚       β”œβ”€β”€ WorldviewLeftPanel.tsx   # Data layer toggles
β”‚   β”‚       β”œβ”€β”€ WorldviewRightPanel.tsx  # Search + filter sidebar
β”‚   β”‚       β”œβ”€β”€ FilterPanel.tsx     # Basic layer filters
β”‚   β”‚       β”œβ”€β”€ AdvancedFilterModal.tsx  # Airport/country/owner filtering
β”‚   β”‚       β”œβ”€β”€ MapLegend.tsx       # Dynamic legend with all icons
β”‚   β”‚       β”œβ”€β”€ MarketsPanel.tsx    # Global financial markets ticker
β”‚   β”‚       β”œβ”€β”€ RadioInterceptPanel.tsx # Scanner-style radio panel
β”‚   β”‚       β”œβ”€β”€ FindLocateBar.tsx   # Search/locate bar
β”‚   β”‚       β”œβ”€β”€ ChangelogModal.tsx  # Version changelog popup
β”‚   β”‚       β”œβ”€β”€ SettingsPanel.tsx   # App settings
β”‚   β”‚       β”œβ”€β”€ ScaleBar.tsx        # Map scale indicator
β”‚   β”‚       β”œβ”€β”€ WikiImage.tsx       # Wikipedia image fetcher
β”‚   β”‚       └── ErrorBoundary.tsx   # Crash recovery wrapper
β”‚   └── package.json

πŸ”‘ Environment Variables

Backend (backend/.env)

# Required
AIS_API_KEY=your_aisstream_key                # Maritime vessel tracking (aisstream.io)

# Optional (enhances data quality)
OPENSKY_CLIENT_ID=your_opensky_client_id      # OAuth2 β€” higher rate limits for flight data
OPENSKY_CLIENT_SECRET=your_opensky_secret     # OAuth2 β€” paired with Client ID above
LTA_ACCOUNT_KEY=your_lta_key                  # Singapore CCTV cameras

Frontend (optional)

Variable Where to set Purpose
NEXT_PUBLIC_API_URL .env next to docker-compose.yml, or shell env Override backend URL when deploying publicly or behind a reverse proxy. Leave unset for auto-detection.

How auto-detection works: When NEXT_PUBLIC_API_URL is not set, the frontend reads window.location.hostname in the browser and calls {protocol}//{hostname}:8000. This means the dashboard works on localhost, LAN IPs, and public domains without any configuration β€” as long as the backend is reachable on port 8000 of the same host.


⚠️ Disclaimer

This is an educational and research tool built entirely on publicly available, open-source intelligence (OSINT) data. No classified, restricted, or non-public data sources are used. Carrier positions are estimates based on public reporting. The military-themed UI is purely aesthetic.

Do not use this tool for any operational, military, or intelligence purpose.


πŸ“œ License

This project is for educational and personal research purposes. See individual API provider terms of service for data usage restrictions.


Built with β˜• and too many API calls

About

Open-source intelligence for the global theater. Track everything from the corporate/private jets of the wealthy, and spy satellites, to seismic events in one unified interface. The knowledge is available to all but rarely aggregated in the open, until now.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors