>_ DevTrendspt

Idioma

Início

Linguagens

Seções

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Embarcados Segurança
TypeScript

GeoLibre: como executar GIS no navegador, Jupyter e desktop sem instalar software pesado

Se você já trabalhou com dados espaciais, conhece a situação padrão. Precisa visualizar rapidamente um GeoJSON ou executar algumas consultas espaciais em um arquivo Parquet — e você abre o QGIS. O aplicativo carrega, puxa módulos, e para visualização básica você acaba gastando alguns gigabytes de RAM e tempo configurando camadas.

Desenvolvedores da comunidade OpenGeos decidiram abordar o problema de um ângulo diferente. Eles criaram o GeoLibre — uma plataforma leve para trabalhar com dados geoespaciais que roda diretamente no navegador, dentro de notebooks Jupyter, e como um aplicativo desktop independente.

O que está sob o capô

A arquitetura do projeto combina várias tecnologias web modernas. O frontend é construído com React e TypeScript. MapLibre GL JS e deck.gl lidam com renderização de mapas 2D e 3D.

A parte mais interessante acontece durante o processamento de dados. Em vez de enviar arquivos geoespaciais pesados para servidores externos, o GeoLibre usa DuckDB-WASM com a extensão espacial. O arquivo é processado no lado do cliente. Você arrasta um arquivo GeoJSON ou Parquet para a janela do navegador, e o DuckDB local executa consultas SQL diretamente na memória do seu dispositivo.

As versões desktop e mobile são construídas com Tauri v2. Isso resulta em um tamanho de distribuição compacto e baixo consumo de recursos comparado a soluções tradicionais baseadas em Electron.

Funcionalidades práticas

A ferramenta cobre a maioria das tarefas diárias para geo-analistas e desenvolvedores.

Spatial SQL local no navegador

DuckDB-WASM permite escrever consultas SQL espaciais sem levantar um PostgreSQL com PostGIS. Você pode realizar joins de camadas, calcular zonas de buffer e agregar dados diretamente na interface da aplicação.

Trabalhando com dados 3D e escalas temporais

GeoLibre suporta trabalhar com 3D Tiles e objetos vetoriais volumétricos. Um exemplo claro dos materiais de demonstração do projeto é um mapa 3D de edifícios de Manhattan.

Demonstração de 3D Tiles no GeoLibre

Cada edifício é extrudado por altura e colorido com base no ano de construção. Usando o slider temporal integrado, você pode reproduzir uma animação e assistir como a cidade foi construída de 1850 a 2025.

Mapa 3D de edifícios de Manhattan

Mapeando outros planetas

Os criadores do projeto não se limitaram à Terra. A plataforma inclui mapas base do OpenPlanetaryMap e USGS Astrogeology.

Vista de Marte no GeoLibre

Você pode trocar para a Lua, Marte, Mercúrio, Vênus, ou luas de Júpiter. Cada corpo celeste tem seu próprio elipsóide definido, então cálculos de distância e área permanecem precisos.

Integração com Python e Jupyter

Um pacote Python separado geolibre está disponível para cientistas de dados. Ele permite embedar mapas interativos diretamente em células do Jupyter Notebook. Você pode passar um DataFrame do Pandas ou GeoPandas para o widget e imediatamente obter uma representação cartográfica pronta.

Como experimentar

A forma mais rápida é abrir a versão web web.geolibre.app. Nenhum registro ou instalação necessária.

Se você está trabalhando no Jupyter, o pacote instala com um comando padrão:

pip install geolibre

Para instalação com Conda, use o repositório conda-forge:

conda install -c conda-forge geolibre

Para builds locais do aplicativo desktop para sua distribuição, você precisará de Node.js e Rust:

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

Para quem o projeto é destinado

GeoLibre é útil para desenvolvedores, pesquisadores e analistas de dados que precisam de uma ferramenta rápida para inspecionar e visualizar dados geoespaciais. Ele não substitui totalmente ferramentas GIS pesadas para cartografia complexa, mas lida bem com processamento inicial rápido, prototipagem no Jupyter, e demonstração de dados espaciais diretamente em um navegador web.

Projetos relacionados