Para que a magia aconteça, a pasta onde se encontra o projecto e, consequentemente, onde iremos executar o Jekyll, tem de ter uma determinada estrutura.

Anatomia da pasta de um projecto em Jekyll

O que se segue é apenas uma breve apresentação de cada elemento já que mais à frente iremos ver como funciona cada um.

Pastas e ficheiros que já conheces

As pastas “css” e “imgs” assim como os ficheiros HTML, são os normais de qualquer projecto web. Mais à frente iremos explorar o conteúdo do html, mas para já vamos conhecer as pastas e ficheiros “especiais”.

_includes

Nesta pasta estão fragmentos de HTML a incluir noutros ficheiros HTML, sendo aqui que reside uma boa parte da magia de Jekyll. Assim, se tiveres um widget que queres mostrar em algumas páginas, basta que nas mesmas coloques uma chamada para o fragmento respectivo. Deste modo, quando são necessárias alterações, estas são feitas num único sítio e o Jekyll encarrega-se de, na compilação, colocar o fragmento em todos os locais onde estiver a chamada.

_layouts

O layout de uma página é a sua estrutura e, num site simples, esta poderá ser a mesma em todas as páginas. Se assim for, criamos apenas um layout (default) que todas as páginas utilizarão para serem compiladas.

_less

Não é obrigatório utilizar Less nem qualquer outro pré-processador. Se não estás familiarizado com pré-processadores apaga esta pasta e trabalha directamente no ficheiro de CSS. Mas se pretendes agilizar o teu processo de trabalho, sugiro que posteriormente explores esta parte. Pessoalmente, prefiro as características de Less.

_site

Esta é a pasta onde o Jekyll grava todo o site, pronto a utilizar ou alojar. Se abrires o _site\index.html no navegador, irás verificar que o site é funcional.

_config.yml

Este é o ficheiro de configuração que permite ao Jekyll juntar tudo como se tivesse base de dados: layouts, includes e conteúdo. Por exemplo, é onde se indica ao Jekyll para não compilar a pasta _less, entre outras pastas e ficheiros que não façam falta ao site final. Voltaremos a falar deste .yml pois é à volta deste formato que se conseguem coisas surpreendentes.

README.md

A função deste ficheiro é mostrar o texto que se lê por baixo da lista de ficheiros na página do Jekyll para Designers no GitHub, pelo que o podes apagar.