Já tem algum tempo que eu venho tentando voltar a escrever minhas loucuras. Não queria também neste momento gastar uma grana com VSP, Servidor, ou algo do tipo. Então alguns problemas simples surgiram como qual serviço de hospedagem e qual tecnologia usar. Então vamos por partes:
Primeiro
Descidi usar o serviço de páginas estáticas do github, o githubpages. Desta forma eu tenho um serviço estável e consolidado para servir minhas páginas.
Segundo
Não estava muito afim de criar meus HTMLs na unha sempre que tivesse afim de escrever um conteúdo qualquer, de forma que precisava de um gerador de páginas HTMLs. A alguns anos atras conheci o Jekill uma ferramenta bacana para gerar HTMLs porém não estava muito confortável em ter que usar Ruby, nada contra, apenas não queria usar, então descidi usar o Pelican que basicamente resolve o mesmo problema, mas escrito em Python.
Fazendo funcionar
O GitHub oferece um serviço de páginas estáticas chamado GithubPages que para utilizar é necessário apenas criar um repositório com o seguinte padrão: username.github.io onde "username" deve ser substituído pelo nome do seu usuário no github.
Passo a Passo
- Se não tiver, crie uma conta no github
- Crie um repositório username.github.io - o meu - pixies.github.io
- Suba seus arquivos neste repositório e acesse o endereço https://username.github.io
E o Pelican?
Vou entender que você jǻ conhece algumas coisas sobre python, como utilizar ambiente virtual e o utilizar o pip.
Criando ambiente virtual
$ virtualenv -p python3 venv
Acessando ambiente
$ source venv/bin/activate
Instalando Pelican via pip
(venv)$ pip install pelican
Criando seu primeiro WebSite
Se você criou um repositório e ele ainda está vazio, simplesmente clone-o e vá para a pasta do seu projeto. Siga até shellunix (percebeu agora que eu acredito que você não usa uinous!?) de preferência e rode o seguinte comando, responda as perguntas necessárias e sinta-se a vontade para confirmar as opções default que estão entre parenteses.
(env)$ pelican-quickstart (env)$ tree
├── content
├── Makefile
├── output
├── pelicanconf.py
├── publishconf.py
├── tasks.py
Estrutura de arquivos e diretótios
- O diretótio "content" ficará todos fontes de todo o conteúdo produzido;
- Makefile contem instruções para automatizar processos;
- No diretório "output" ficará todos os arquivos staticos gerados a partir do conteúdo que está no diretório "content"; ...
Criando seu primeiro conteúdo
Siga até o diretório "content" e crie um diretório chamado de "pages" onde todas os arquivos destinados as páginas serão criados, agora dentro do diretório "pages" crie um arquivo com a extenção .rst, "contanto.rst" e escreva o seguinte conteúdo:
Title: Página de Contúdo
Date: 2019-07-14 10:20
Category: Pages
Está é a página de Contatos
Observe que diretório "output" ainda está vazio, agora rode o comando "pelican" pela primeira vez:
(env)$ pelican
| BaseReader (static)
| HTMLReader (htm, html)
| RstReader (rst)
Done: Processed 0 articles, 0 drafts, 1 pages, 0 hidden pages and 0 draft pages in 0.07 seconds.
Abrindo meu website
Você pode simplemente abrir seu navegador de internet preferido e navegar até o diretório output do seu projeto e abrir o arquivo index.html, ou pode na sua shellunix entrar no diretório output e rodar o seguinte comando:
(env)$ cd output
(env)$ python3 -m http.server
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
Agora em seu navegador preferido acesse http://localhost:8000
Publicando seu website no githubpages
Uma vez seu website pronto, execute o comando:
(env)$ make github
Este comando ira preparar seu projeto para fazer push no github, insira suas credênciais e ao finalizar acesse sua página em https://username.github.io
--~ Esta postagem será reatualizada algumas vezes até está concluída, esta é a sua primeira versão.