Cómo convertir un navegador en un centro de mando de inteligencia usando datos abiertos
Las películas de espías suelen mostrar enormes pantallas con un globo 3D, donde un operador rastrea aeronaves en tiempo real, cambia a cámaras de vigilancia urbana y señala satélites. Generalmente parece costosos gráficos de Hollywood. Pero en realidad, casi todas estas señales son abiertas y se están transmitiendo ahora mismo sin cifrar.

El proyecto God's Eye View, creado por el desarrollador Bilawal Sidhu, combina fuentes de datos abiertas dispares en una única ventana del navegador basada en un globo 3D fotorrealista. El autor dirigió una popular serie de videos en YouTube, reunió millones de visualizaciones y publicó todo el código fuente bajo la licencia MIT.
Qué puede hacer el proyecto
Normalmente, para recopilar información espacial (OSINT/GEOINT), tienes que abrir docenas de pestañas: Flightradar24 para aeronaves, MarineTraffic para barcos, catálogos de satélites CelesTrak y sitios de cámaras de tráfico. Aquí, todas estas capas están consolidadas en un solo lugar.

Aquí hay algunas cosas interesantes que puedes explorar en vivo:
- Vista de cabina. Selecciona cualquier aeronave real en el aire, presiona un botón y vuela junto a ella. La cámara mantiene el terreno debajo encuadrado, mientras se muestra un resumen del clima y contactos cercanos.

- Proyección de cámaras de tráfico directamente en la escena 3D. Alrededor de 800 cámaras públicas en Austin, Londres y California no solo se abren en un reproductor separado, sino que se proyectan sobre la geometría de intersección con conos de visibilidad.

- Órbitas de satélites y misiones espaciales. El globo calcula las posiciones de cientos de satélites, incluyendo la Estación Espacial Internacional, dibuja trayectorias y reproduce lanzamientos de cohetes recientes.

-
Filtros de shader de sensores. Las teclas de acceso rápido pueden cambiar la imagen a visión nocturna (NVG), imágenes térmicas (FLIR) o modo de monitor CRT.
-
Control por voz mediante red neuronal. Si conectas una clave de OpenAI, la aplicación se puede controlar por voz. El agente entiende coordenadas, la perspectiva actual de la cámara, puede medir distancias entre objetos y dibujar límites de distritos directamente sobre el mapa.

Bajo el capó
No hay marcos frontend pesados como React o Vue aquí. El stack es sorprendentemente directo: JavaScript vanilla, la herramienta de compilación Vite y el motor geoespacial CesiumJS. El planeta 3D en sí se renderiza usando Google Photorealistic 3D Tiles.
La arquitectura es interesante en cómo el autor resolvió los problemas típicos de visualización de geodatos sin procesar:
- Suavidad con actualizaciones poco frecuentes. La mayoría de las API gratuitas entregan posiciones de aeronaves cada 15–30 segundos. El cliente intencionalmente renderiza el movimiento con un retraso de un intervalo de polling e interpola puntos, llenando los huecos con navegación por estima.
- Anclaje de altura. Los objetos no flotan en el aire ni se hunden bajo tierra. Las alturas del transpondedor se recalculan relativas al geoide y se comparan con la malla poligonal del terreno actual.
- Cálculo de órbita. Las coordenadas de los satélites se calculan localmente usando el algoritmo SGP4 con sincronización de tiempo sideral de Greenwich, para que los anillos de órbita no tiemblen al cambiar de perspectiva.
- Seguridad de claves y límites de tasa. Todas las solicitudes a API de pago (OpenAI, AISStream, TomTom) se proxifican a través del backend, donde se configuran caché y límites de tasa estrictos en el consumo de solicitudes.
src/
├── main.js # Инициализация CesiumJS и слоев
├── ui.js # Панели управления, HUD, стили
├── hud.js # Интерфейс телеметрии
├── mapStackController.js # Переключение подложек (Google 3D / Bing / OSM)
├── iconOrientation.js # Проекция курсовых углов техники на экран
├── voice/ # Интеграция с OpenAI Realtime API
└── data/ # Модули загрузки данных по каждому слою
Fuentes de datos y costo de lanzamiento
La mayoría de las capas funcionan sin registro ni claves: aviación a través de OpenSky y adsb.lol, terremotos a través de USGS, satélites a través de CelesTrak, estaciones de radio a través de Radio Browser, bases de datos de centros de datos y cables submarinos.
Para ejecutar el terreno 3D en sí, necesitarás una clave de API de Google Maps con la API de Map Tiles habilitada. Google proporciona 1000 sesiones gratuitas al mes. Cada sesión dura hasta tres horas de visualización activa, lo cual es más que suficiente para experimentos personales. Se necesita un token de OpenAI funcional para el asistente de voz.

Inicio rápido
Se requiere Node.js versión 24 o 26.
Clona el repositorio y configura las variables de entorno:
git clone https://github.com/bilawalsidhu/gods-eye-view.git
cd gods-eye-view
cp .env.example .env
Abre el archivo .env, inserta GOOGLE_MAPS_API_KEY y ejecuta el proyecto:
npm install
npm run dev -- --host localhost --port 4173
Después de eso, la interfaz está disponible en http://localhost:4173. Por defecto, el servidor solo escucha en la dirección local de la máquina, así que tus claves de API no se filtrarán a la red local.
A quién le será útil este proyecto
Ante todo, este es un excelente tutorial para desarrolladores web que quieren entender WebGL, tiles 3D, la biblioteca CesiumJS y el procesamiento de flujos geoespaciales. El código está escrito sin abstracciones innecesarias, la lógica de cada capa está aislada en la carpeta src/data/, y la implementación del agente de voz demuestra claramente cómo conectar LLMs multimodales con una escena 3D.
Si estás construyendo tu propio sistema de monitoreo, un panel de control para drones, o estás interesado en el análisis de inteligencia de fuentes abiertas, el proyecto servirá como un marco sólido para tus propias capas y visualizaciones.
Proyectos relacionados