Open-source intelligence platform aggregates live data from dozens of sources including aircraft, ships, satellites, and conflict zones into a unified geospatial dashboard.
ShadowBroker is a real-time geospatial intelligence dashboard that aggregates live data from dozens of open-source intelligence (OSINT) feeds and renders them on a unified dark-ops map interface. 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.
What ShadowBroker Actually Does
The platform tracks aircraft, ships, satellites, earthquakes, conflict zones, CCTV networks, GPS jamming, and breaking geopolitical events—all updating in real time. Here's what's actually new:
Aviation Tracking: Real-time positions via OpenSky Network (~5,000+ aircraft), private aircraft tracking, military flights via adsb.lol military endpoint, flight trail accumulation, and aircraft classification with shape-accurate SVG icons.
Maritime Tracking: AIS vessel stream via WebSocket (25,000+ vessels), ship classification with color-coded icons, carrier strike group tracking with OSINT-estimated positions, and automated GDELT news scraping for carrier movement intelligence.
Space & Satellites: Orbital tracking via CelesTrak TLE data + SGP4 propagation (2,000+ active satellites), mission-type classification color-coded by purpose.
Geopolitics & Conflict: GDELT-powered conflict event aggregation (last 8 hours, ~1,000 events), Ukraine frontline live warfront GeoJSON from DeepState Map, and real-time RSS aggregation from multiple intelligence-focused sources.
Surveillance: CCTV mesh with 2,000+ live traffic cameras from Transport for London, Austin TxDOT, NYC DOT, and Singapore LTA.
Signal Intelligence: GPS jamming detection via aircraft NAC-P value analysis, with grid-based aggregation identifying interference zones.
Technical Architecture
The platform uses a FastAPI backend with a Next.js frontend. Data sources update at various intervals—aviation data every 60 seconds, maritime via real-time WebSocket, satellite positions every 60 seconds, and earthquakes every 60 seconds.
Performance optimizations include gzip compression (92% reduction), ETag caching, viewport culling, clustered rendering, and debounced viewport updates. The system handles massive real-time datasets efficiently.
Getting Started
Docker Setup (Recommended): Clone the repository and run docker-compose up -d. The dashboard starts on http://localhost:3000.
Quick Start (No Code): Download from the Releases tab, extract, and run the appropriate start script for your OS.
Developer Setup: Requires Node.js 18+, Python 3.10+, and API keys for aisstream.io (required) and optionally opensky-network.org.
Data Sources & APIs
| Source | Update Frequency | API Key Required |
|---|---|---|
| OpenSky Network | ~60s | Optional |
| adsb.lol Military | ~60s | No |
| aisstream.io | Real-time WebSocket | Yes |
| CelesTrak Satellite | ~60s | No |
| USGS Earthquake | ~60s | No |
| GDELT Project | ~6h | No |
| DeepState Map | ~30min | No |
| Transport for London | ~5min | No |
| TxDOT Austin | ~5min | No |
| NYC DOT | ~5min | No |
| Singapore LTA | ~5min | Yes |
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.
{{IMAGE:1}} {{IMAGE:2}}
The project is available on GitHub under an educational license.
Comments
Please log in or register to join the discussion