Releases: BigBodyCobain/Shadowbroker
ShadowBroker v0.9.6
Highlights
- Infonet Testnet — a currently obfuscated communications platform with more planned. Meshtastic off the grid support.
- Gate messages on the hashchain — encrypted Gate posts now propagate through normal Infonet chain sync. Only Gate members with MLS keys can decrypt. Every node carries the ciphertext.
- Mesh reputation system — node trust scoring, peer push workers, voluntary Wormhole opt-in for node participation
- Wormhole gate encryption — MLS-based key management for encrypted Gate chatrooms with per-gate personas
- Self-updater hardened — encryption keys, chain state, and identity files are now protected from being overwritten during auto-update
- 16 community contributors credited in the changelog modal
New Features
- Decentralized Infonet Testnet
- Shodan device search with map overlay
- Real-time train tracking (Amtrak + European rail)
- Sentinel Hub satellite imagery with OAuth2
- 8 new intelligence layers (volcanoes, air quality, severe weather, fishing activity, military bases, power plants, SatNOGS, TinyGS)
- CCTV expansion to 11,000+ cameras across 6 countries
- Mesh Terminal CLI for power users
- Prediction markets panel
- Desktop-shell scaffold (pre-Tauri)
- InfoNet Terminal with Gate view, Ballot view, Exchange view
- killwormhole scripts for clean shutdown
Bug Fixes
- Fixed NODE AGREE button disappearing (auth mismatch)
- Fixed frontend/backend canonical hash mismatch on transport_lock
- Fixed sequence double-advance, cooldown on failed posts
- Fixed fork detection and hash mismatch from shallow copy mutation
- Removed orphaned useEffect cleanup in MessagesView
Contributors
@wa1id, @AlborzNazari, @adust09, @Xpirix, @imqdcr, @csysp, @suranyami, @chr0n1x, @johan-martensson, @singularfailure, @smithbh, @OrfeoTerkuci, @deuza, @tm-const, @Elhard1, @ttulttul
Install
Download ShadowBroker_v0.9.6.zip, extract, copy .env.example to .env, add your API keys, run start.bat (Windows) or bash start.sh (Mac/Linux).
Existing installations with auto-update enabled will pull this release automatically.
ShadowBroker v0.9.5
The Voltron Update
The best of both worlds — GitHub community contributions merged with our modular local architecture.
Docker users: This is a major architectural update. The in-app updater cannot apply it inside containers. Run:
docker-compose down && git pull && docker-compose up -d --buildThis is the last manual update required — v0.9.5+ supports bulletproof in-app updates going forward.
New Capabilities
- Parallelized Boot (15s Cold Start) — ThreadPoolExecutor runs all data tiers concurrently
- Adaptive Polling + ETag Caching — continuous data flow, no more bbox interrupts
- Sliding Edge Panels (LAYERS / INTEL) — spring-animated side tabs replace bulky Record Panel
- Admin Auth + Rate Limiting + Auto-Updater — X-Admin-Key, slowapi, one-click GitHub updates
- Docker Swarm Secrets Support — load API keys from /run/secrets/ in production
Fixes & Improvements
- Stable entity IDs for GDELT & News popups — no more wrong popup after data refresh (PR #63)
- useCallback optimization for interpolation — eliminates redundant re-renders every 1s tick
- Restored missing GDELT and datacenter background refreshes in slow-tier loop
- Server-side viewport bbox filtering reduces JSON payloads 80%+
- Modular fetcher architecture (flights, geo, infrastructure, financial, earth_observation)
- CCTV ingestors instantiated once at startup — no more fresh DB connections every 10min
Architecture
- 85+ vitest tests + CI pipeline (
.github/workflows/ci.yml) - Extracted geoJSONBuilders, useInterpolation, useClusterLabels, alertSpread utilities
- Custom hooks: useDataPolling, useRegionDossier, useReverseGeocode
- Backend env_check.py with warning tiers + retry decorator on all fetchers
Contributors
ShadowBroker v0.9.0
What's New in v0.9.0
In-App Auto-Updater
One-click updates directly from the dashboard — no more manual downloads. Click CHECK UPDATES → confirmation dialog → AUTO UPDATE. The backend downloads the latest release zip, backs up your files, extracts over the project, and auto-restarts. Your .env, databases, and cache files are never touched. A MANUAL DOWNLOAD fallback link is always available if anything goes wrong.
Granular Ship Layer Controls
Ships are now split into 4 independent toggles in the sidebar:
- Military / Carriers — naval vessels and aircraft carriers
- Cargo / Tankers — commercial shipping
- Civilian Vessels — everything else
- Cruise / Passenger — passenger ships
Each toggle shows its own live count. Default: military, cargo, and passenger ON; civilian OFF.
Stable Entity Selection
Ship and flight markers now use MMSI/callsign as identifiers instead of volatile array indices. Selecting a ship or plane stays locked on even when data refreshes every 60 seconds. No more "phantom deselection" when the backend sends updated data.
Dismissible Threat Alerts
Click the × on any threat alert bubble to dismiss it for the current session. Uses stable content hashing (title + coordinates) so dismissed alerts stay hidden even across 60-second data refresh cycles.
Faster Data Loading
- GDELT military incidents now load instantly with background title enrichment (previously blocked for 2+ minutes)
- Eliminated duplicate startup fetch jobs for faster boot
- Docker healthcheck timing tuned to prevent false restarts during preload
Bug Fixes
- Removed viewport bbox filtering that caused 20-second delays when panning
- Fixed carrier tracker crash on GDELT 429/TypeError responses
- Removed fake intelligence assessment generator — all data is now real OSINT only
- Fixed ETag collision (full payload hash instead of first 256 chars)
- Added concurrent
/api/refreshguard to prevent duplicate data fetches
Community Contributors
- @imqdcr — Ship toggle split into 4 categories + stable MMSI/callsign entity IDs for map markers
- @csysp — Dismissible threat alert bubbles with stable content hashing + stopPropagation crash fix (#48)
- @suranyami — Parallel multi-arch Docker builds + runtime BACKEND_URL fix (#35, #44)
Upgrade
Download ShadowBroker_v0.9.0.zip, extract over your existing install, and run start.bat (Windows) or start.sh (macOS/Linux). Your .env, databases, and caches are preserved.
Or if you're already running v0.8.0+, just click CHECK UPDATES in the top-right corner of the dashboard!
ShadowBroker v0.8.0
Whats New in v0.8.0
New Features
- POTUS Fleet Tracking - Air Force One, Air Force Two, and Marine One display with oversized hot-pink icons + gold dashed halo ring
- Full 9-Color Aircraft System - Military (yellow), medical/rescue (lime), police/government (blue), privacy (black), VIPs (hot pink), dictators/oligarchs (red), and more
- Sentinel-2 Satellite Overhaul - Fullscreen image overlay with Download, Copy to Clipboard, and Open Full Res buttons (green dossier-themed UI)
- Carrier Homeport Fidelity - Carriers at shared homeports now dock at distinct pier positions instead of stacking
- Toggle All Data Layers - One-click button to enable/disable all layers (cyan when active, excludes MODIS Terra)
- Version Badge and Update Checker - Version display in UI with GitHub release checker and Discussions shortcut
- Overhauled Map Legend - Full 9-color aircraft legend with POTUS fleet, wildfires, and infrastructure sections
- Data Center Map Layer - ~700 global data centers from curated dataset
Fixes and Improvements
- All Air Force Two ICAO hex codes now correctly identified with gold halo
- POTUS icon priority over grounded state
- Sentinel-2 imagery no longer overlaps bottom coordinate bar
- Region dossier Nominatim 429 rate-limit retry/backoff
- Docker ENV legacy format warnings resolved
- UI buttons cyan in dark mode, grey only in light mode
- Circuit breaker for flaky upstream APIs
Community Contributors
- @suranyami - Parallel multi-arch Docker builds (11min to 3min) + runtime BACKEND_URL fix (PR #35, #44)
ShadowBroker_v0.8.0.zip - extract and run start.bat (Windows) or start.sh (macOS/Linux)
ShadowBroker v0.7.0
What's New in v0.7.0
Performance Hardening
- Parallelized stock/oil fetches — ThreadPoolExecutor cuts yfinance from ~8s to ~2s
- AIS WebSocket stability — backoff resets after 200 consecutive successes; removed lock-contention pruning
- Single-pass ETag — JSON serialized once, hashed, returned (was serializing twice)
- Deferred icon loading — 35 critical icons load immediately, 50+ deferred via setTimeout(0)
- News animation cap — entrance animations limited to first 15 items
- heapq.nlargest() for FIRMS fires (60K to 5K) and internet outages
- Removed satellite duplication from fast endpoint
- Geopolitics interval reduced from 5min to 30min (6x fewer API calls)
- Ship counts single-pass memoized; color maps extracted to module constants
- GDELT headline extraction improved — skips gibberish URL slugs
Community Contributions
- PR #33 (suranyami): Multi-arch Docker builds (amd64 + arm64) — runs on Raspberry Pi, Apple Silicon, AWS Graviton
- PR #35 (suranyami): Fixed proxy gzip decoding + BACKEND_URL Docker override issues
Quick Start
- Download ShadowBroker_v0.7.0.zip below
- Extract and run start.bat (Windows) or ./start.sh (Mac/Linux)
- Open http://localhost:3000
ShadowBroker v0.6.0
What's New in v0.6.0
Custom News Feed Manager
- Add, remove, and prioritize up to 20 RSS intelligence sources from the Settings panel
- Assign weight levels (1-5) to control feed importance - no more editing Python files
- Custom feeds persist across restarts via backend/config/news_feeds.json
Global Data Center Map Layer
- 2,000+ data centers plotted worldwide from a curated dataset
- Clustered purple markers with server-rack icons
- Click any DC for operator details - internet outage cross-referencing by country
Performance Hardening
- Imperative map rendering - high-volume layers bypass React reconciliation via direct setData() calls
- Debounced updates (2s) on dense layers to prevent render thrashing
- Enhanced /api/health with per-source freshness timestamps and counts
Fixes and Improvements
- Data center coordinates fixed for 187 Southern Hemisphere entries
- Docker CORS_ORIGINS env var properly passed through docker-compose
- Start scripts warn on Python 3.13+ compatibility issues
- Settings panel redesigned with tabbed UI (API Keys / News Feeds)
Quick Start
- Download ShadowBroker_v0.6.0.zip below
- Extract and run start.bat (Windows) or ./start.sh (Mac/Linux)
- Open http://localhost:3000
ShadowBroker v0.5.0
v0.5.0 — Environmental & Infrastructure Monitoring
New Intelligence Layers
-
🔥 NASA FIRMS Fire Hotspots (24h) — 5,000+ global thermal anomalies from NOAA-20 VIIRS satellite. Flame-shaped icons color-coded by fire radiative power: yellow (low) → orange → red → dark red (intense). Clusters use flame icons too — no confusion with Global Incidents circles.
-
☀️ Space Weather Badge — Live geomagnetic storm indicator in the bottom status bar. Color-coded Kp index from NOAA SWPC: green (quiet), yellow (active), red (storm G1–G5).
-
📡 Internet Outage Monitoring — Regional connectivity alerts from Georgia Tech IODA. Grey markers at affected regions with severity percentage. Uses only reliable datasources (BGP routing tables, active ping probing) — no misleading telescope data.
Fixes & Improvements
- All data sourced from verified OSINT feeds — no fabricated or interpolated data points
- Internet outages filtered to reliable datasources only (BGP, ping) — excludes merit-nt telescope data that produced misleading percentages
- Fire clusters use flame-shaped icons instead of circles for clear visual separation from other layers
- MapLibre font errors resolved — switched to Noto Sans (universally available on tile servers)
Data Sources Added
| Source | Data | Key Required |
|---|---|---|
| NASA FIRMS | NOAA-20 VIIRS fire/thermal hotspots | No |
| NOAA SWPC | Space weather Kp index & solar events | No |
| IODA (Georgia Tech) | Regional internet outage alerts | No |
ShadowBroker v0.4.0
What's New in v0.4.0
This release adds satellite imagery, software-defined radio integration, and major UX enhancements for navigating the map.
New Features
- NASA GIBS Satellite Imagery (MODIS Terra): Daily true-color satellite imagery overlay with a 30-day time slider, play/pause animation, and opacity control. Best for tracking weather patterns, cloud cover, fires, and large-scale environmental changes (~250m/pixel).
- High-Res Satellite Imagery (Esri World Imagery): Sub-meter resolution satellite basemap — zoom into buildings, infrastructure, and terrain detail at zoom level 18+. Toggle from Data Layers or the new SATELLITE style preset.
- Sentinel-2 Intel Card: Right-click anywhere on the map to get a floating intel card showing the most recent Sentinel-2 satellite photo (10m resolution, updated every ~5 days) with capture date, cloud cover %, and a clickable full-resolution image — rendered directly on the map, not buried in the dossier panel.
- KiwiSDR Radio Receivers: 500+ public software-defined radio receivers plotted worldwide with clustered amber markers. Click any node to open a live embedded SDR tuner in the SIGINT INTERCEPT panel.
- LOCATE Bar: New search bar above the bottom coordinates display. Enter raw coordinates (31.8, 34.8) or place names (Tehran, Strait of Hormuz) to fly directly to any location on the globe — geocoded via OpenStreetMap Nominatim.
- SATELLITE Style Preset: The STYLE button now cycles DEFAULT → SATELLITE → FLIR → NVG → CRT. Selecting SATELLITE auto-enables the Esri high-res imagery layer.
v0.4.0 Changelog Modal: Returning users see a one-time "What's New" popup highlighting all new capabilities and fixes.
Bug Fixes & Improvements
- Satellite Layer Ordering: Imagery layers now render below all data icons (flights, ships, markers) using an invisible anchor layer — no more disappearing icons when toggling satellite on.
- Sentinel-2 Click Fix: Clicking the satellite thumbnail now opens the actual full-resolution PNG image directly in browser, instead of a raw JSON API endpoint or confusing catalog page.
- Light/Dark Theme Fix: UI panels and text now stay dark regardless of theme selection — only the map basemap switches between dark and light tiles.
- Security Cleanup: Removed 19 test files containing hardcoded API keys from git tracking. Removed accidentally-tracked .git_backup directory. Updated .gitignore to prevent future leaks.
New Dependencies
pystac-client>=0.7.0 — Required for Sentinel-2 imagery search (install in backend venv)
Installation
Download ShadowBroker_v0.4.0.zip below for the complete setup bundle.
Includes cross-platform start.bat (Windows) and start.sh (Mac/Linux) launchers.
ShadowBroker v0.3
What's New in v0.3.0
This release focuses heavily on improving the initial user experience (UX) and patching community-reported security and connection issues.
New Features
- Mission Briefing (Onboarding Modal): A new first-time setup guide that walks users through which API keys are required (OpenSky, AIS Stream), where to get them, and which 8 data sources run automatically out-of-the-box.
- Backend Connection Banner: The dashboard now displays a prominent red warning banner if the backend API connection is lost or unreachable, rather than failing silently with a blank map.
- README Overhaul: Added a "Quick Start" Docker snippet and streamlined setup instructions for new developers.
Security & Improvements
- API Key Local Security: API keys are no longer transmitted in plain text between the backend and frontend. The Settings panel now uses a secure boolean check and obfuscates active keys to prevent over-the-shoulder or network leakage.
- Dependency Pruning: Removed over 100KB of dead legacy dependencies (
leaflet,react-leaflet,mapbox-gl) and deprecated components, reducing the frontend bundle size.
Installation
Download ShadowBroker_v0.3.zip below for the complete setup bundle.
Includes cross-platform start.bat (Windows) and start.sh (Mac/Linux) launchers.
ShadowBroker v0.2
- Added Docker publishing via GitHub Actions
- Fixed Mac OS compatibility issue in package.json
- Made curl calls OS-agnostic for Python testing