MVT Server: publica teselas vectoriales desde PostGIS con MapLibre

La publicación de datos geoespaciales en la web ha evolucionado considerablemente en los últimos años. Los mapas web modernos utilizan cada vez más teselas vectoriales (Vector Tiles), que permiten representar grandes volúmenes de información geográfica de forma rápida, flexible e interactiva.

Dentro de este ecosistema aparece MVT Server, un proyecto open source desarrollado en Rust que propone simplificar una parte importante del proceso: publicar datos almacenados en PostGIS y gestionar desde una única interfaz no solo las teselas vectoriales, sino también los estilos, mapas, leyendas, fuentes y otros recursos cartográficos.

La filosofía del proyecto se resume en una idea: una única plataforma para publicar, administrar y operar los recursos cartográficos de un proyecto web.

¿Qué es MVT Server?

MVT Server es una plataforma de publicación cartográfica de código abierto que convierte datos almacenados en PostgreSQL/PostGIS en servicios cartográficos preparados para aplicaciones web.

Aunque su nombre hace referencia a MVT (Mapbox Vector Tiles), el proyecto va más allá de actuar simplemente como un servidor de teselas vectoriales.

Desde su interfaz web es posible gestionar:

  • 🗺️ Capas de teselas vectoriales.
  • 🧭 Documentos TileJSON.
  • 🌍 Mapas construidos con varias capas.
  • 🎨 Estilos compatibles con MapLibre.
  • 📖 Leyendas dinámicas.
  • 🔤 Fuentes (glyphs).
  • 🎯 Iconos (sprites).
  • 🗂️ Metadatos de las capas.

Todos estos recursos se administran desde el mismo entorno, evitando tener que mantener manualmente numerosos archivos de configuración.

Esta es precisamente una de las características que diferencia a MVT Server de un servidor de teselas vectoriales tradicional: no se centra únicamente en servir datos, sino en proporcionar un entorno para gestionar los diferentes elementos que necesita un mapa web moderno.

De PostGIS al mapa web

El flujo de trabajo de MVT Server parte de una fuente que resulta familiar para muchos profesionales GIS: PostGIS.

Imaginemos que tenemos en una base de datos una tabla con municipios, carreteras o edificios.

Tradicionalmente, para convertir esos datos en un mapa web podemos necesitar diferentes componentes:

PostGIS → servidor de teselas → estilos → cliente web

MVT Server intenta simplificar este flujo:

PostGIS → MVT Server → mapa web

Una vez conectada la base de datos, desde la interfaz de administración se puede seleccionar qué tablas o vistas se quieren publicar y configurar las características de cada capa.

Posteriormente, esas capas pueden consumirse desde herramientas como QGIS o aplicaciones web basadas en MapLibre, entre otras tecnologías del ecosistema geoespacial.

¿Por qué MVT Server?

Todo lo que un mapa necesita, en un solo servidor. Desde teselas crudas hasta mapas completamente estilizados, herramientas de administración y operación en producción — todo en el mismo binario.

  1. Teselas MVT al vuelo. Sirves Mapbox Vector Tiles generadas en tiempo real desde tablas y vistas de PostgreSQL/PostGIS — sin necesidad de pre-renderizar.
  2. Metadatos de capas. Cada capa lleva una ficha de metadatos editable — idioma, contactos, palabras clave, linaje, fechas y enlaces — protegida por un rol de administración dedicado.
  3. TileJSON 3.0.0. Cada capa y fuente compuesta se describe con un documento TileJSON conforme al estándar, listo para cualquier cliente compatible con MVT.
  4. Mapas completos con MapLibre. Publica mapas completos y estilizados con MapLibre directamente desde el servidor — no solo endpoints de teselas crudas.
  5. Estilos y leyendas dinámicas. Define estilos de capa reutilizables para QGIS y clientes web, con leyendas generadas automáticamente a partir de ellos.
  6. Servidor de glyphs y sprites. Servidor de fuentes e íconos incluido, para que tus estilos personalizados viajen junto con tus teselas.
  7. Control de publicación granular. Elige exactamente qué campos exponer, suma filtros SQL, limita el rango de zoom y define un máximo de registros por capa.
  8. Administración web. Gestiona usuarios, grupos, capas, estilos y categorías desde el navegador — sin editar archivos de configuración a mano.
  9. Control de acceso por capa. Protege capas con autenticación Basic o JWT, y limita el acceso a grupos de usuarios específicos.
  10. Caché integrado. Caché de teselas en disco o con Redis, con política de caché y TTL controlados por capa.
  11. Métricas con Prometheus. Expón métricas de solicitudes y rendimiento listas para usar, para scrapear desde tu Prometheus existente.
  12. Independiente o en clúster. Corre un solo binario para despliegues chicos, o escala con múltiples nodos contra un backend de PostgreSQL compartido.
  13. Sistema de plugins en Lua. Extiende el manejo de solicitudes con scripts Lua para personalizar el comportamiento sin necesidad de forkear el servidor.
  14. API de catálogo. Una API HTTP en evolución para consultar y administrar el catálogo de capas de forma programática.
  15. Soporte i18n. Internacionalización y localización en etapa temprana, para que la administración web hable más de un idioma.

Un proyecto interesante para el futuro del webmapping open source

La aparición de herramientas como MVT Server refleja un cambio importante en el desarrollo de aplicaciones geoespaciales.

Durante muchos años, publicar un mapa web implicaba trabajar con diferentes servidores, formatos, archivos de configuración y componentes.

El ecosistema actual permite construir arquitecturas mucho más ligeras:

PostGIS + MVT + MapLibre

A este esquema, MVT Server añade una pieza interesante: una interfaz desde la que administrar no solamente las teselas, sino también los estilos, mapas y recursos cartográficos asociados.

Para organizaciones que ya utilizan PostGIS y quieren publicar cartografía vectorial moderna sin construir toda la infraestructura desde cero, MVT Server puede ser una alternativa que merece la pena probar.

Y, sobre todo, resulta interesante para quienes trabajan habitualmente con QGIS + PostGIS + webmapping, porque conecta de una manera bastante natural el mundo GIS de escritorio con las aplicaciones cartográficas web.

🎓 ¿Quieres aprender web mapping y PostGIS?

Si trabajas con SIG y quieres dar el salto desde QGIS y los SIG de escritorio hacia el desarrollo de aplicaciones cartográficas web, conocer tecnologías como PostGIS, teselas vectoriales y MapLibre puede abrirte nuevas posibilidades profesionales.

En MappingGIS trabajamos precisamente con este ecosistema de tecnologías open source para que puedas aprender a desarrollar y publicar tus propios mapas y aplicaciones geoespaciales.

Puedes empezar por PostGIS para aprender a gestionar y analizar datos espaciales en PostgreSQL y continuar con Webmapping para aprender a llevar esos datos al navegador mediante tecnologías cartográficas web.

Conclusión

MVT Server es mucho más que otro servidor de teselas vectoriales.

Su propuesta consiste en crear un punto central para publicar, administrar y distribuir recursos cartográficos a partir de PostGIS, utilizando una interfaz web y una arquitectura basada en Rust.

La combinación de PostGIS, MVT, MapLibre y QGIS permite construir flujos de trabajo modernos y completamente basados en tecnologías open source.

El proyecto todavía está evolucionando, pero su planteamiento resulta especialmente atractivo: hacer que publicar un mapa vectorial en la web se parezca cada vez más a publicar una aplicación web, sin tener que gestionar manualmente cada pieza de la infraestructura.

Puedes consultar el proyecto y su código fuente en MVT Server en GitHub.

Deja un comentario