Stack Projeto WebGIS - leodedeus/pi_webgis GitHub Wiki

Projeto WebGIS com Tecnologias Livres

Este wiki apresenta os componentes planejados para o desenvolvimento do projeto WebGIS com tecnologias livres.

A estrutura do projeto consiste em um banco de dados para armazenamento dos dados, um servidor de mapas para gerar geosserviços no padrão OGC (Open Geospatial Consortium), uma biblioteca de mapas JavaScript para mostrar os dados no mapa, um framework web para o desenvolvimento de todo o backend envolvido na aplicação, e linguagens de programação para a criação do frontend da aplicação.

Stack do Projeto

Diagrama de Arquitetura

Banco de Dados

O banco de dados escolhido para o desenvolvimento deste projeto é o Sistema de Gerenciamento de Banco de Dados (SGBD) PostgreSQL. Ele é um sistema de código aberto que inclui uma extensão espacial chamada PostGIS. O PostGIS permite o armazenamento de dados vetoriais (linhas, pontos ou polígonos) no banco de dados e oferece uma ampla gama de funções para manipular dados espaciais.

Servidor de Mapas

Os dados armazenados no PostgreSQL/PostGIS precisam ser convertidos para um formato adequado para publicação na web. Para isso, utilizamos o GeoServer, um software que fornece imagens de mapas dinâmicos a partir de dados geoespaciais. O GeoServer publica os dados em padrões OGC (WMS, WFS, WCS) e é amplamente utilizado na comunidade de desenvolvedores de WebGIS com tecnologias livres.

Biblioteca para Mapeamento

Para integrar os dados publicados pelo GeoServer em uma aplicação WebGIS, utilizamos a biblioteca JavaScript Leaflet. A Leaflet é conhecida por ser leve e possui uma grande comunidade de colaboradores. Ela oferece funções para criar e manipular mapas interativos, como zoom, navegação, criação de marcadores e pop-ups.

Framework Web

A aplicação WebGIS é desenvolvida em Python e utiliza o framework Django. O Django é um framework consolidado, com uma ampla comunidade de apoio. Além disso, o Django possui uma extensão chamada GeoDjango, que facilita o trabalho com dados espaciais, incluindo um modelo espacial, API de consulta espacial e uma interface de administração espacial.

Front-End

Para o desenvolvimento do front-end da aplicação, utilizamos as linguagens de marcação HTML e CSS, bem como a linguagem de programação JavaScript.

Versionamento

O versionamento do projeto é realizado utilizando o sistema de controle de versão Git em conjunto com o serviço de hospedagem GitHub.

Este conjunto de tecnologias permite a criação de uma aplicação WebGIS robusta e eficiente, aproveitando o poder de tecnologias livres e de código aberto.