>_ DevTrendses

Idioma

Inicio

Lenguajes

Secciones

Frontend Backend Móvil DevOps AI / ML GameDev Blockchain Embebidos Seguridad
TypeScript

GeoLibre: cómo ejecutar GIS en el navegador, Jupyter y escritorio sin instalar software pesado

Si alguna vez has trabajado con datos espaciales, conoces la situación habitual. Necesitas ver rápidamente un GeoJSON o ejecutar un par de consultas espaciales sobre un archivo Parquet, y abres QGIS. La aplicación se carga, importa módulos, y para una visualización básica terminas gastando un par de gigabytes de RAM y tiempo configurando capas.

Los desarrolladores de la comunidad OpenGeos decidieron abordar el problema desde un ángulo diferente. Crearon GeoLibre: una plataforma ligera para trabajar con datos geoespaciales que se ejecuta directamente en el navegador, dentro de notebooks Jupyter y como aplicación de escritorio independiente.

Qué hay bajo el capó

La arquitectura del proyecto combina varias tecnologías web modernas. El frontend está construido con React y TypeScript. MapLibre GL JS y deck.gl se encargan del renderizado de mapas 2D y 3D.

La parte más interesante ocurre durante el procesamiento de datos. En lugar de enviar archivos geoespaciales pesados a servidores externos, GeoLibre utiliza DuckDB-WASM con la extensión espacial. El archivo se procesa del lado del cliente. Arrastras un archivo GeoJSON o Parquet a la ventana del navegador, y DuckDB local ejecuta consultas SQL directamente en la memoria de tu dispositivo.

Las versiones de escritorio y móvil están construidas con Tauri v2. Esto resulta en un tamaño de distribución compacto y bajo consumo de recursos en comparación con soluciones tradicionales basadas en Electron.

Capacidades prácticas

La herramienta cubre la mayoría de las tareas cotidianas para geoanalistas y desarrolladores.

SQL espacial local en el navegador

DuckDB-WASM permite escribir consultas SQL espaciales sin necesidad de levantar PostgreSQL con PostGIS. Puedes realizar uniones de capas, calcular zonas de amortiguamiento y agregar datos directamente en la interfaz de la aplicación.

Trabajo con datos 3D y escalas temporales

GeoLibre soporta el trabajo con Tiles 3D y objetos vectoriales volumétricos. Un ejemplo claro de los materiales de demostración del proyecto es un mapa 3D de edificios de Manhattan.

Demostración de Tiles 3D en GeoLibre

Cada edificio está extrusionado por altura y coloreado según el año de construcción. Usando el control deslizante temporal integrado, puedes reproducir una animación y observar cómo se construyó la ciudad desde 1850 hasta 2025.

Mapa 3D de edificios de Manhattan

Cartografía de otros planetas

Los creadores del proyecto no se limitaron a la Tierra. La plataforma incluye mapas base de OpenPlanetaryMap y USGS Astrogeology.

Vista de Marte en GeoLibre

Puedes cambiar a la Luna, Marte, Mercurio, Venus o las lunas de Júpiter. Cada cuerpo celeste tiene su propio elipsoide definido, por lo que los cálculos de distancia y área permanecen precisos.

Integración con Python y Jupyter

Existe un paquete de Python separado geolibre para científicos de datos. Permite incrustar mapas interactivos directamente en celdas de Jupyter Notebook. Puedes pasar un DataFrame de Pandas o GeoPandas al widget e inmediatamente obtener una representación cartográfica lista para usar.

Cómo probarlo

La forma más rápida es abrir la versión web web.geolibre.app. No se requiere registro ni instalación.

Si estás trabajando en Jupyter, el paquete se instala con un comando estándar:

pip install geolibre

Para instalación con Conda, usa el repositorio conda-forge:

conda install -c conda-forge geolibre

Para compilaciones locales de la aplicación de escritorio para tu distribución, necesitarás Node.js y Rust:

git clone https://github.com/opengeos/GeoLibre.git
cd GeoLibre
pnpm install
pnpm tauri dev

Para quién está creado el proyecto

GeoLibre es útil para desarrolladores, investigadores y analistas de datos que necesitan una herramienta rápida para inspeccionar y visualizar datos geoespaciales. No reemplaza completamente las herramientas GIS pesadas para cartografía compleja, pero maneja procesamiento inicial rápido, prototipado en Jupyter y demostración de datos espaciales directamente en un navegador web.

Proyectos relacionados