C.R.A.S.H.: Construyendo un Simulador de Impacto de Asteroides de la NASA en 32 Horas

Postmortem del proyecto del hackathon NSAC2025 donde construimos un simulador 3D de impacto de asteroides usando datos reales de la NASA, CesiumJS y Three.js en solo 32 horas.

C.R.A.S.H.: Construyendo un Simulador de Impacto de Asteroides de la NASA en 32 Horas

El Desafío

NSAC2025 (NASA Space Apps Challenge) - 32 horas para construir algo significativo con los datos abiertos de la NASA. Nuestro equipo eligió el desafío de "Simulación de Impacto de Asteroides".

El Stack (Elegido por Velocidad)

Decisiones de Arquitectura

1. Renderizado Dividido: Cesium para Globo, Three.js para Efectos

Cesium maneja la Tierra, terreno e imágenes satelitales. Three.js superpone trayectorias de asteroides, efectos de impacto y sistemas de partículas.

2. Pipeline de Datos de NASA

Datos en tiempo real de:

3. Simulación de Física de Impacto

Simplificada pero visualmente precisa:

Qué Salió Bien

  1. Preparación pre-hackathon - Configuramos la integración Cesium + Three.js la semana anterior
  2. Contratos de datos claros - Interfaces TypeScript coincidían con modelos Pydantic de Python
  3. Flujos de trabajo paralelos - Una persona en datos, una en 3D, una en UI
  4. Disciplina de alcance - Recortamos características sin piedad (sin cuentas de usuario, sin guardado)

Qué Haríamos Distinto

  1. Mejor gestión de estado - React Context se volvió caótico con el estado de la escena 3D
  2. Despliegue automatizado - Despliegues manuales Vercel + Railway perdieron tiempo
  3. Más caché de datos NASA - Límites de rate de API durante la demo

El Resultado

Conclusiones Clave para Hackathons

Enlaces

Linktree