Skip to content

Repository files navigation

GlobeX

Real-time global intelligence dashboard built with React and a 3D interactive globe. Tracks military aircraft, maritime vessels, and defense satellites while ingesting OSINT events from Telegram channels.

Features

  • 3D Globe — Interactive visualization powered by react-globe.gl
  • Military Aircraft Tracking — Live positions from the Airplanes.live ADS-B network
  • Ship Tracking — Real-time AIS data from aisstream.io
  • Satellite Overlay — Defense & active satellite positions computed from CelesTrak TLE data via satellite.js
  • Telegram OSINT Feed — Listens to Telegram channels, analyzes messages with OpenRouter AI, and plots threat events on the globe
  • Threat Severity Classification — Incoming events are scored and color-coded (low / medium / high / critical)

Architecture

Layer Technology
Frontend React 19 + TypeScript, Vite, react-globe.gl
Backend / Proxy Python WebSocket server (proxy_server.py)
AIS Data aisstream.io WebSocket API
Aircraft Data Airplanes.live REST API
Satellite Data CelesTrak GP JSON + satellite.js propagation
Telegram Ingestion Telethon (Telegram client)
AI Analysis OpenRouter /preset/globe-x

Prerequisites

  • Node.js >= 18
  • Python >= 3.10
  • Python packages: websockets, requests, pygeolocate, telethon

Setup

1. Environment variables

Copy .env.example (or create .env) in the project root with the following keys:

OPENROUTER_API_KEY=<your-openrouter-api-key>
AIS_STREAM_API_KEY=<your-aisstream-api-key>
TELEGRAM_API_ID=<your-telegram-api-id>
TELEGRAM_API_HASH=<your-telegram-api-hash>
TELEGRAM_SESSION_STRING=<your-telegram-session-string>

The .env file is loaded at runtime by config_env.py and is already in .gitignore.

2. Install dependencies

# Frontend
npm install

# Python
pip install websockets requests pygeolocate telethon

3. Run

# Start the Python proxy server (AIS + aircraft + Telegram)
python proxy_server.py

# In another terminal, start the Vite dev server
npm run dev

The frontend dev server proxies CelesTrak requests through Vite (see vite.config.ts).

Project Structure

├── src/                  # React frontend
│   ├── App.tsx           # Main app shell & data orchestration
│   ├── data.ts           # Types, threat data, satellite helpers
│   └── components/       # Globe, Sidebar, panels (Aircraft, Ship, Satellite, Info)
├── proxy_server.py       # WebSocket proxy: AIS, aircraft polling, Telegram listener
├── analyze_message.py    # Sends Telegram messages to OpenRouter for AI analysis
├── telegram.py           # Standalone Telegram listener (dev/testing)
├── config_env.py         # Loads .env into os.environ
└── .env                  # Secret keys (not committed)

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages