Fala devs! Tudo bem com vocês? Eu descobri que Sculpin é um tipo de peixe, mas além disso é também uma ferramenta muito bacana que oferece a possibilidade de manter blogs de maneira simples e intuitiva.
O conceito:
O conceito do Sculpin não é novo, o fluxo de trabalho, publicação e deploy que a ferramenta sugere é similar ao Jekyll, onde trabalhamos localmente escrevendo os artigos no formato markdown e deixamos o deploy a cargo de alguma chamada de script ou integração com ferramentas de CI/CD que será acionada a cada push efetuado no repositório de origem.
Irei mostrar como deixar a publicação a cargo do GitHub Pages, que abstrai todo o processo de deploy. Para isso, serão necessárias apenas algumas configurações no seu repositório.
O que veremos na prática?
- Criar um projeto com Sculpin
- Escrever um post
- Testar localmente
- Gerar a versão de produção
- Realizar o deploy para o GitHub Pages
Vamos lá!
Criando um projeto com Sculpin:
composer create-project sculpin/blog-skeleton sculpin
Escrevendo um post:
Primeiro, acesse o diretório de posts do projeto:
cd sculpin\source\_posts
Crie o arquivo markdown onde iremos escrever o post (observe que a estrutura do nome será utilizada para os diretórios e URL):
touch 2019-08-13-my-first-post.md
Insira o conteúdo abaixo no arquivo 2019-08-13-my-first-post.md
:
---
title: My New Post!
tags:
- post
- blog
categories:
- various
---
# This is my first post with Sculpin!
... and this is an example content ...
Observações:
Este conteúdo serve apenas como exemplo, mas é importante lembrar que contamos com todo o poder do markdown para criar artigos ricos e com diversas complexidades.
Opcionalmente, você pode remover todos exemplos que estão no diretório de posts do Sculpin com este comando:
rm -r *
Testando localmente:
vendor\bin\sculpin generate --watch --server
Qualquer alteração que for realizada será automaticamente compilada e estará imediatamente disponível para visualização no browser.
Gerando a versão de produção:
Precisamos inserir a URL de acesso do GitHub Pages do repositório criado para o projeto no arquivo app/config/sculpin_site.yml
, que no meu caso ficou assim:
Podemos observar que o padrão da URL é sempre este:
https://<username>.github.io/repository
O próximo passo é gerar os arquivos estáticos para envio à produção:
vendor\bin\sculpin generate --env=prod
Realizando o deploy para o GitHub Pages:
Primeiro, acesse o diretório de produção do projeto:
cd output_prod
Execute o comando para adicionar o repositório git remoto do seu projeto (repository_url
deve ser a URL do seu repositório no GitHub):
git init && git remote add origin <repository_url>
Realize um commit com as alterações e execute um push na branch master:
git add . && git commit -m "initial commit" && git push origin master
Para visualizar nosso projeto na web, basta realizar uma última configuração em nosso repositório do GitHub. Para isso. navegue até o item “GitHub Pages” nas configurações do repositório e marque o branch master
como ponto de built para o seu projeto.
E pronto, já podemos ver nosso blog na web! No meu caso, a URL ficou assim:
https://lafraga93.github.io/sculpin/
Podemos obervar que o padrão da URL é sempre este:
https://<username>.github.io/repository
É importante lembrar que é possível customizar o layout, estilos e comportamentos dos blogs criados com o Sculpin. Basta checar a documentação oficial do projeto para conhecer todas as possibilidades da ferramenta.
Considerações finais:
Hoje podemos concluir que o Sculpin é sem dúvidas uma incrível ferramenta para geração de conteúdo estático através de um processo direto e eficiente de produção de conteúdo, customização e publicação.
Espero que o artigo seja útil para vocês… Forte abraço e até a próxima oportunidade!