Skip to content

ShadowBroker v0.9.5

Choose a tag to compare

@BigBodyCobain BigBodyCobain released this 14 Mar 19:51
· 445 commits to main since this release

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 --build

This 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

  • @csysp — Dismissible threat alerts + stable entity IDs for GDELT & News popups (PR #48, #63)
  • @imqdcr — Ship toggle split into 4 categories + stable MMSI/callsign entity IDs
  • @suranyami — Parallel multi-arch Docker builds + runtime BACKEND_URL fix (PR #35, #44)