GitHub y Jekyll para mi web

October 10, 2014

¡Ya está! Había muchas opciones de plataformas para dar soporte a esta web en la que voy a mostrar mis trabajos, mis ideas e incluso algo sobre mí mismo, pero me he decantado por: Jekyll.

Una de las cosas que más me gustan de Jekyll es que genera contenido estático. Esto significa que, a diferencia de otros entornos como el popular WordPress, las páginas que abren los visitantes ya existen en su versión final y se entregan de forma inmediata. Los otros entornos, los de generación dinámica, resuelven plantillas y usan una base de datos sobre la que realizan varias consultas antes de componer la página final que el visitante recibe, incurriendo en un retardo. No obstante, a menudo existen soluciones añadidas para ayudar un poco con la velocidad con que se sirve el contenido en estos entornos de generación dinámica, p.ej. el plugin WP Super Cache para WordPress.

Otra ventaja de elegir Jekyll es que es la plataforma empleada por GitHub para dar soporte a sus GitHub Pages. Esto significa que puedo usar la infraestructura de GitHub para alojar mi web de forma gratuita (también hay versión de pago con funciones y recursos extra). El funcionamiento guarda estrecha relación con Git, otra de las herramientas indispensables para mí. Git es un programa de control de versiones distribuido que me permite mantener un historial completo de todos los cambios hechos en mi web. Entonces, para empezar, basta con crear el repositorio Git que asociaré a mi GitHub Page y, con incluir mi instalación Jekyll en el repositorio, la plataforma de GitHub despliega mi web automáticamente para que esté accesible al público cada vez que haya cambios en el respositorio. En principio he copiado en mi cuenta de GitHub el repositorio pre-existente Jekyll Now, que no es más que una instalación básica de Jekyll a la que se han añadido algunos estilos y plantillas, para partir de una estructura mínima.

Una vez listo lo lo anterior, hay varias formas de crear nuevas entradas en la web, siempre trabajando en el repositorio asociado. P.ej. sencillamente creando nuevos ficheros en el directorio _posts desde mi cuenta de usuario de GitHub. También puedo clonar el repositorio en mi PC, crear ahí un nuevo fichero y subirlo a GitHub una vez este listo. En cualquier caso, este nuevo fichero se convertirá en una nueva entrada de mi web, y para redactarlo uso Markdown, que es un lenguaje muy sencillo, más simple que HTML, y que permite dar formato, crear encabezados, listas, enlaces, imágenes, código, tablas, etc.

Creo que tiene fama de estar pensado para hackers, pero Jekyll, al menos en el contexto de las GitHub Pages, es muy fácil de poner en marcha; a mí me ha llevado un par de horas conocerlo, instalarlo y crear esta entrada (he seguido este tutorial). Además, hay un montón de plugins para Jekyll en los que aun no he profundizado, pero que estoy seguro me harán la vida más fácil.

Archivos