3.4. Herramientas: generadores de sitios web

El complemento de los lenguajes de marcado ligero son los generadores de documentación. Estas herramientas toman como material de trabajo los ficheros etiquetados en Markdown o en ReStructuredText (véase apartado 2.3), leen la configuración, aplican una hoja de estilos, y generan los documentos resultantes normalmente en HTML. En los últimos años han parecido un buen número de generadores de documentación, la mayoría bajo licencias de software libre, algunos de los cuales se han popularizado rápidamente. Esto ha permitido que los usuarios puedan dejar de lado los blogs soportados por Wordpress, por ejemplo, y optar por webs de páginas estáticas generadas de esta forma, lo que supone un ahorro considerable de espacio y de velocidad de respuesta, además de simplificación de gestión de datos, al no necesitar un sistema de gestión de bases de datos instalado en el espacio web del que disponen.

Es importante destacar que las JAMstack desarrollan todo su potencial cuando los documentos marcado están despositados en repositorios de código, ya que se mantiene un control de versiones, lo que significa que se automatiza el histórico de cambios, y es posible recuperar y cambiar a versiones anteriores en cualquier momento. Además, al estar separada la capa de presentación, en plantillas y hojas de estilo, los cambios de ésta, o del contenido que muestra, no afectan una a la otra, ni tampoco a las funcionalidades que se hayan integrado con JavaScript. Finalmente, hay que recordar que el código JavaScript se ejecuta en el navegador del usuario, lo que resulta más rápido, seguro y eficiente.

El flujo de trabajo ideal es simple:

  1. Los ficheros con el contenido etiquetado y el código se almacenan en un repositorio, con funcionalidades de edición y modificación de los mismos. Esto quiere decir que las fuentes se encontrarán en un repositorio Git, como GitHub o Gitlab.
  2. Cuando se produce un cambio en los ficheros, se lanza un proceso de construcción del sitio, que da como resultado un conjunto de páginas web etiquetadas en HTML, y que integran contenido, datos, capa de presentación... trabajo que desarrollan los generadores de sitios (como Jekyll, Hugo, etc.).
  3. El resultado se publica automáticamente en una CDN (Content Delivery Network), asegurando un rápido despliegue y la disponibilidad física de las páginas, eliminando los tiempos de espera típicos de un CMS sobre base de datos tradicional.
Material complementario

Financiado por el Ministerio de Educación y Formación Profesional y por la Unión Europea - NextGenerationEU

logo.png


Revision #10
Created 17 November 2022 23:25:39 by Jesús Tramullas
Updated 1 February 2023 21:15:32 by Jesús Tramullas