You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: _posts/2015-11-16-como-fiz-meu-site-com-jekyll-e-github-pages.markdown
+30-30Lines changed: 30 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,18 +6,18 @@ description: Um passo-a-passo de como fiz meu site com Jekyll e GitHub Pages e c
6
6
7
7
Após passar certo sufoco para construir e configurar este site com Jekyll e GitHub Pages, aqui está um passo-a-passo de <b>como você pode fazer o seu</b>. Sabe como é, eu sou de humanas. Se eu consegui, você também consegue.
8
8
9
-
O [Jekyll](http://jekyllrb.com/) é um gerador super-simplificado de sites estáticos. É grátis, código aberto, e uma ótima plataforma para blogs. Além disso, é a engrenagem por trás do [GitHub Pages](http://pages.github.com/), o que significa que você tem __hospedagem gratuita__ e integração facilitada com sua máquina através do [Git](https://git-scm.com/) (que é maravilhoso).
9
+
O [Jekyll](https://jekyllrb.com/) é um gerador super-simplificado de sites estáticos. É grátis, código aberto, e uma ótima plataforma para blogs. Além disso, é a engrenagem por trás do [GitHub Pages](https://pages.github.com/), o que significa que você tem __hospedagem gratuita__ e integração facilitada com sua máquina através do [Git](https://git-scm.com/) (que é maravilhoso).
<figcaption>Octogato, o mascote do GitHub,<br> com o frasquinho do Jekyll <font color="red"><i class="fa fa-heart"></i></font></figcaption>
14
14
</figure>
15
15
16
-
Todo o sistema funciona com base em __arquivos de texto simples__, o que fará você se sentir [blogging like a hacker](http://tom.preston-werner.com/2008/11/17/blogging-like-a-hacker.html) (olha a hype!). Aí está um primeiro obstáculo, você não terá uma interface gráfica mastigadinha como um tumblr, blogger ou worpress, mas contará com ótimos __guias e tutoriais__ para ajudar no processo e terá __controle completo__ sobre seu site ou blog.
16
+
Todo o sistema funciona com base em __arquivos de texto simples__, o que fará você se sentir [blogging like a hacker](https://tom.preston-werner.com/2008/11/17/blogging-like-a-hacker.html) (olha a hype!). Aí está um primeiro obstáculo, você não terá uma interface gráfica mastigadinha como um tumblr, blogger ou worpress, mas contará com ótimos __guias e tutoriais__ para ajudar no processo e terá __controle completo__ sobre seu site ou blog.
17
17
18
18
Outros requisitos são saber se virar no __inglês__, já que a maioria dos usuários escrevem nesta língua e ter __paciência para procurar__ informações no google e na documentação do software.
19
19
20
-
O Jekyll roda nativamente no __Linux__, __Unix__, e no __Mac OS X__. Diz que até funciona no [Windows](http://jekyllrb.com/docs/windows/), mas saiba que vai ser meio na gambiarra.
20
+
O Jekyll roda nativamente no __Linux__, __Unix__, e no __Mac OS X__. Diz que até funciona no [Windows](https://jekyllrb.com/docs/windows/), mas saiba que vai ser meio na gambiarra.
21
21
22
22
Todo o passo-a-passo descrito nesta postagem foi feito no __Debian Jessie__, mas a maior parte é comum a todas as distribuições. Durante o guia, eu suponho que você não trema de medo do terminal, saiba rodar comandos como root e que convém um `apt-get update` antes de instalar qualquer coisa.
23
23
@@ -27,11 +27,11 @@ Além disso, nenhum conhecimento prévio é necessário, nem qualquer experiênc
27
27
28
28
# Escolha um tema
29
29
30
-
Apesar de você ter a opção de começar um site do zero, nós vamos ser mais espertos do que isso e começar [escolhendo um __tema do jekyll__](http://jekyllthemes.org/).
30
+
Apesar de você ter a opção de começar um site do zero, nós vamos ser mais espertos do que isso e começar [escolhendo um __tema do jekyll__](https://jekyllthemes.org/).
31
31
32
-
Vá, gaste um tempo e escolha um que lhe agrade. Tem para todos os gostos, desde mais [simples](http://carte-noire.jacobtomlinson.co.uk/) e [minimalistas](http://nadjetey.github.io/redcup/) até alguns bem [completos](https://phlow.github.io/feeling-responsive/), [bacanosos](http://t413.com/SinglePaged/), e até meio [extravagantes](http://digitalmind.ch/themes/twister-jekyll-theme/demo/).
32
+
Vá, gaste um tempo e escolha um que lhe agrade. Tem para todos os gostos, desde mais [simples](https://carte-noire.jacobtomlinson.co.uk/) e [minimalistas](https://nadjetey.github.io/redcup/) até alguns bem [completos](https://phlow.github.io/feeling-responsive/), [bacanosos](https://t413.com/SinglePaged/), e até meio [extravagantes](https://digitalmind.ch/themes/twister-jekyll-theme/demo/).
33
33
34
-
Da minha parte, comecei com o [Long Haul](http://brianmaierjr.com/long-haul/), criado por [Brian Maier](https://twitter.com/brianmaier). O tema é simples, bem instrumentalizado, e tem uma documentação razoável, mas acabei modificando muita coisa. Você também pode usar [minha própria versão do tema](https://github.com/ggio/ggio.github.io), a.k.a. este site que você acessa agora, como ponto de partida para o seu, mas recomendo começar com um tema mesmo, pela organização, limpeza e tals.
34
+
Da minha parte, comecei com o [Long Haul](https://brianmaierjr.com/long-haul/), criado por [Brian Maier](https://twitter.com/brianmaier). O tema é simples, bem instrumentalizado, e tem uma documentação razoável, mas acabei modificando muita coisa. Você também pode usar [minha própria versão do tema](https://github.com/ggio/ggio.github.io), a.k.a. este site que você acessa agora, como ponto de partida para o seu, mas recomendo começar com um tema mesmo, pela organização, limpeza e tals.
35
35
36
36
> <b> Atualização: </b> em 2025, migrei para o tema <ahref="https://github.com/cotes2020/jekyll-theme-chirpy">Chirpy</a>, com alguns ajustes. Fiz isso basicamente porque queria algo minimalista e de fácil manutenção, ainda que com estilo. Continuo achando o <i>Long Haul</i> um ótimo ponto de partida, mas acabou caindo a ficha de que ele é um tema um tanto mais elaborado do que a média, com as vantagens e desvantagens disso.
37
37
{: .prompt-info }
@@ -55,15 +55,15 @@ Uma vez escolhido um tema, é hora de começar com o GitHub:
55
55
<figcaption>Ali você muda o nome.</figcaption>
56
56
</figure>
57
57
58
-
Parabéns, você provavelmente já está online em `http://seu-nome-de-usuario.github.io` Talvez agora você queira trabalhar no formato e conteúdo antes de divulgar o endereço por aí. Vamos a isso.
58
+
Parabéns, você provavelmente já está online em `https://seu-nome-de-usuario.github.io` Talvez agora você queira trabalhar no formato e conteúdo antes de divulgar o endereço por aí. Vamos a isso.
59
59
60
60
---
61
61
62
62
# Trabalhando localmente com o Git e Jekyll
63
63
64
-
Para criar conteúdo e testar o site antes de deixá-lo brilhar na vida, nós precisamos do [Jekyll](http://jekyllrb.com/) para montar o site localmente e do [Git](https://git-scm.com/) para publicar as alterações no GitHub.
64
+
Para criar conteúdo e testar o site antes de deixá-lo brilhar na vida, nós precisamos do [Jekyll](https://jekyllrb.com/) para montar o site localmente e do [Git](https://git-scm.com/) para publicar as alterações no GitHub.
65
65
66
-
Você vai precisar também de um __editor de texto simples__. Eu recomendo fortemente o [Sublime Text](http://www.sublimetext.com/), que faz super juz ao nome, mas você pode usar qualquer um. O `gedit`, pré-instalado no Jessie, dá conta do recado.
66
+
Você vai precisar também de um __editor de texto simples__. Eu recomendo fortemente o [Sublime Text](https://www.sublimetext.com/), que faz super juz ao nome, mas você pode usar qualquer um. O `gedit`, pré-instalado no Jessie, dá conta do recado.
67
67
68
68
## 1. Instale o Git
69
69
@@ -76,7 +76,7 @@ apt-get install git
76
76
77
77
### Modo fácil
78
78
79
-
Depois de gastar horas pesquisando e instalando todos os [requisitos do Jekyll](http://jekyllrb.com/docs/installation/), descobri que é muito fácil instalá-lo no __Debian Jessie__. Tão fácil como:
79
+
Depois de gastar horas pesquisando e instalando todos os [requisitos do Jekyll](https://jekyllrb.com/docs/installation/), descobri que é muito fácil instalá-lo no __Debian Jessie__. Tão fácil como:
80
80
81
81
```bash
82
82
apt-get install jekyll
@@ -86,14 +86,14 @@ apt-get install jekyll
86
86
87
87
Mesmo que você seja desafortunado e sua distribuição não tenha esse pacote no repositório, ainda é bastante simples. Segue o passo-a-passo:
88
88
89
-
Instale as dependências [Ruby](http://www.ruby-lang.org/en/downloads/):
89
+
Instale as dependências [Ruby](https://www.ruby-lang.org/en/downloads/):
90
90
91
91
```bash
92
92
apt-get install ruby
93
93
apt-get install ruby2.1-dev #=> ou a versão mais atual disponível
94
94
```
95
95
96
-
Agora as dependências [NodeJS](http://nodejs.org/):
96
+
Agora as dependências [NodeJS](https://nodejs.org/):
A seguir, vai uma apresentação rápida de cada um dos itens. Saiba mais lendo a [documentação completa do Jekyll](http://jekyllrb.com/docs/structure/).
148
+
A seguir, vai uma apresentação rápida de cada um dos itens. Saiba mais lendo a [documentação completa do Jekyll](https://jekyllrb.com/docs/structure/).
149
149
150
150
#### _config.yml
151
151
@@ -166,7 +166,7 @@ Exemplo: {% raw %}`{% include xablau.html %}`{% endraw %}
166
166
#### _layouts
167
167
168
168
* São esquemas em HTML aplicáveis a páginas e posts.
169
-
* Para usá-los, você precisa anunciar com uma [YAML front matter](http://jekyllrb.com/docs/frontmatter/), um bloco simples de texto, separado por três traços, que __precisa ser a primeira coisa do arquivo__:
169
+
* Para usá-los, você precisa anunciar com uma [YAML front matter](https://jekyllrb.com/docs/frontmatter/), um bloco simples de texto, separado por três traços, que __precisa ser a primeira coisa do arquivo__:
170
170
171
171
```yaml
172
172
---
@@ -196,7 +196,7 @@ Navegue até a pasta do seu site e deixe o Jekyll fazer sua mágica:
196
196
cd seu-nome-de-usuario.github.io
197
197
jekyll serve --watch
198
198
```
199
-
__Ta-dã__! Você pode ver seu site em ação em `http://localhost:4000`.
199
+
__Ta-dã__! Você pode ver seu site em ação em `https://localhost:4000`.
200
200
201
201
A flag `--watch` é opcional e faz com que suas alterações tenham efeito automaticamente (bastando atualizar a página no navegador).
202
202
@@ -232,7 +232,7 @@ git commit -m "minha primeira edição"
232
232
git push
233
233
```
234
234
235
-
Preencha seu login e senha do GitHub e __tcharã__, seu conteúdo está online. Confira em `http://seu-nome-de-usuario.github.io`.
235
+
Preencha seu login e senha do GitHub e __tcharã__, seu conteúdo está online. Confira em `https://seu-nome-de-usuario.github.io`.
236
236
237
237
__Entendendo os comandos acima__:
238
238
@@ -242,19 +242,19 @@ __Entendendo os comandos acima__:
242
242
243
243
Parece complicado, né? No começo é um pouco mesmo, mas, acredite, o Git vai fazer valer a pena cada minuto gasto para aprender a usá-lo. Além de permitir a integração da sua máquina com o GitHub, o Git é __um poderoso software de controle de versões__ que vai tornar sua vida bem melhor.
244
244
245
-
Para entender mais, recomendo este [__guia prático__](http://rogerdudler.github.io/git-guide/index.pt_BR.html) e que você faça este [__mini-treinamento de 15 minutos__](https://try.github.io/levels/1/challenges/1). Além disso, a [documentação do Git](https://git-scm.com/doc) é completíssima, bem como o [tutorial da Atlassian](https://www.atlassian.com/git/tutorials/setting-up-a-repository).
245
+
Para entender mais, recomendo este [__guia prático__](https://rogerdudler.github.io/git-guide/index.pt_BR.html) e que você faça este [__mini-treinamento de 15 minutos__](https://try.github.io/levels/1/challenges/1). Além disso, a [documentação do Git](https://git-scm.com/doc) é completíssima, bem como o [tutorial da Atlassian](https://www.atlassian.com/git/tutorials/setting-up-a-repository).
246
246
247
247
---
248
248
249
249
# (Opcional / Avançado) Sincronizando o Jekyll local com o GitHub Pages
250
250
251
-
Tanto o [Jekyll](http://jekyllrb.com/docs/github-pages/#deploying-jekyll-to-github-pages) como o [GitHub Pages](https://help.github.com/articles/using-jekyll-with-pages/) sugerem que você sincronize sua instalação local do Jekyll com a usada pelo GitHub. É completamente opcional, mas isso __evita que você tenha surpresas__ com diferenças entre o site rodado na máquina e o gerado pelo GitHub.
251
+
Tanto o [Jekyll](https://jekyllrb.com/docs/github-pages/#deploying-jekyll-to-github-pages) como o [GitHub Pages](https://help.github.com/articles/using-jekyll-with-pages/) sugerem que você sincronize sua instalação local do Jekyll com a usada pelo GitHub. É completamente opcional, mas isso __evita que você tenha surpresas__ com diferenças entre o site rodado na máquina e o gerado pelo GitHub.
252
252
253
253
Note que, para isso, você vai passar a precisar sempre de __acesso à internet__ para rodar o site localmente, mas é por uma boa causa.
254
254
255
255
__É fácil__:
256
256
257
-
1) Instale o [Bundler](http://bundler.io/).
257
+
1) Instale o [Bundler](https://bundler.io/).
258
258
259
259
```bash
260
260
gem install bundler
@@ -310,47 +310,47 @@ Convém fazer uma [página de erro personalizada](/posts/adsfa) para seu site. B
310
310
311
311
## Tipografia é importante
312
312
313
-
Tome 10 minutos do seu tempo para ler este [guia interativo de tipografia](http://www.kaikkonendesign.fi/typography/#section/1), simples, acessível e direto ao ponto.
313
+
Tome 10 minutos do seu tempo para ler este [guia interativo de tipografia](https://www.kaikkonendesign.fi/typography/#section/1), simples, acessível e direto ao ponto.
314
314
315
-
Você já deve saber, mas [nunca use preto](http://ianstormtaylor.com/design-tip-never-use-black/).
315
+
Você já deve saber, mas [nunca use preto](https://ianstormtaylor.com/design-tip-never-use-black/).
316
316
317
317
318
318
## Sitemap.xml
319
319
320
-
Gerar um Sitemap.xml é uma boa prática de [SEO](http://static.googleusercontent.com/media/www.google.com/en/us/webmasters/docs/search-engine-optimization-starter-guide.pdf) e fará com que a busca do google goste mais ainda de você. Basta seguir as [instruções do David Ensinger](http://davidensinger.com/2013/11/building-a-better-sitemap-xml-with-jekyll/).
320
+
Gerar um Sitemap.xml é uma boa prática de [SEO](https://static.googleusercontent.com/media/www.google.com/en/us/webmasters/docs/search-engine-optimization-starter-guide.pdf) e fará com que a busca do google goste mais ainda de você. Basta seguir as [instruções do David Ensinger](https://davidensinger.com/2013/11/building-a-better-sitemap-xml-with-jekyll/).
321
321
322
322
## Integrando comentários do Disqus com Jekyll
323
323
324
324
O [Disqus](https://disqus.com/websites/) é uma plataforma de comentários bem útil e fácil de implementar. Eu até testei o [Muut](https://muut.com/), mas ele não é tão completo e bonitão.
325
325
326
-
Para integrar o Disqus com Jekyll, siga as [instruções do Perfectly Random](http://www.perfectlyrandom.org/2014/06/29/adding-disqus-to-your-jekyll-powered-github-pages/).
326
+
Para integrar o Disqus com Jekyll, siga as [instruções do Perfectly Random](https://www.perfectlyrandom.org/2014/06/29/adding-disqus-to-your-jekyll-powered-github-pages/).
327
327
328
328
## Domínio customizado
329
329
330
330
O endereço padrão do github (seu-nome-de-usuario.github.io) já é gracinha o bastante, mas caso você queira, como eu quis, ter um domínio próprio, é fácil de fazer. O site continua hospedado no GitHub pages e um servidor de DNS faz o truque com o endereço. E, claro, você precisa pagar pelo domínio.
331
331
332
-
Eu segui as [instruções do Chen Jui Jing](http://www.chenhuijing.com/blog/setting-up-custom-domain-github-pages/), mas sugiro que você dê uma olhada também no [tutorial do Ensinger](http://davidensinger.com/2014/04/transferring-the-dns-from-namecheap-to-cloudflare-for-github-pages/).
332
+
Eu segui as [instruções do Chen Jui Jing](https://www.chenhuijing.com/blog/setting-up-custom-domain-github-pages/), mas sugiro que você dê uma olhada também no [tutorial do Ensinger](https://davidensinger.com/2014/04/transferring-the-dns-from-namecheap-to-cloudflare-for-github-pages/).
333
333
334
334
## Adicionando Font Awesome
335
335
336
-
[Font Awesome](http://fontawesome.io/) é um pacote grátis com bilhões de [ícones úteis](http://fontawesome.io/icons/) e minimalistas, customizáveis e prontos para uso. É bem [facinho de implementar](http://fontawesome.io/get-started/).
336
+
[Font Awesome](https://fontawesome.io/) é um pacote grátis com bilhões de [ícones úteis](https://fontawesome.io/icons/) e minimalistas, customizáveis e prontos para uso. É bem [facinho de implementar](https://fontawesome.io/get-started/).
337
337
338
338
<!--
339
339
## Realce de código com Prism.js
340
340
341
-
O Jekyll tem duas [opções nativas](http://jekyllrb.com/docs/templates/#code-snippet-highlighting) (leia-se mais leves e melhor integradas) de `realce de código` e o seu tema muito provavelmente também já vem com alguma opção __pronta para uso__.
341
+
O Jekyll tem duas [opções nativas](https://jekyllrb.com/docs/templates/#code-snippet-highlighting) (leia-se mais leves e melhor integradas) de `realce de código` e o seu tema muito provavelmente também já vem com alguma opção __pronta para uso__.
342
342
343
-
Mas porque não dificultar um pouco implementando um sistema externo de realce? Foi o que eu fiz com o [Prism.js](http://prismjs.com/). O site deles tem as [instruções](http://prismjs.com/#basic-usage).
343
+
Mas porque não dificultar um pouco implementando um sistema externo de realce? Foi o que eu fiz com o [Prism.js](https://prismjs.com/). O site deles tem as [instruções](https://prismjs.com/#basic-usage).
344
344
345
345
Detratores dirão que eu só fiz isso porque não consegui configurar nenhuma opção nativa, e eles estarão certos. Tirando que o Prism.js é lindo.
346
346
-->
347
347
## Integrando Jekyll com Reveal.js
348
348
349
-
[Reveal.js](http://lab.hakim.se/reveal-js/#/) é um sistema foda de criação de apresentações de slides em HTML. A integração com o Jekyll é bem descrita no [site do Luu Gia Thuy](http://luugiathuy.com/2015/04/jekyll-create-slides-with-revealjs/). Ele só esqueceu de dizer que, se você pretende modificar os temas padrão, você precisa __clonar__ (e não adicionar como submodule) o reveal.js à sua pasta. Você pode ter uma ideia melhor de como organizar as pastas e arquivos html dos slides no [meu repositório](https://github.com/ggio/ggio.github.io/tree/master/slides).
349
+
[Reveal.js](https://lab.hakim.se/reveal-js/#/) é um sistema foda de criação de apresentações de slides em HTML. A integração com o Jekyll é bem descrita no [site do Luu Gia Thuy](https://luugiathuy.com/2015/04/jekyll-create-slides-with-revealjs/). Ele só esqueceu de dizer que, se você pretende modificar os temas padrão, você precisa __clonar__ (e não adicionar como submodule) o reveal.js à sua pasta. Você pode ter uma ideia melhor de como organizar as pastas e arquivos html dos slides no [meu repositório](https://github.com/ggio/ggio.github.io/tree/master/slides).
350
350
351
351
## Páginas de subcategorias
352
352
353
-
Pela natureza meio esquizo deste site, eu <del>quis</del> precisei dividir as postagens entre duas categorias, "Psicologia para concurso" e "blog", e isso __complica tudo__. Depois de pesquisar bastante, fiquei satisfeito com as instruções nessa [resposta no Stack Overflow](http://stackoverflow.com/a/26684859).
353
+
Pela natureza meio esquizo deste site, eu <del>quis</del> precisei dividir as postagens entre duas categorias, "Psicologia para concurso" e "blog", e isso __complica tudo__. Depois de pesquisar bastante, fiquei satisfeito com as instruções nessa [resposta no Stack Overflow](https://stackoverflow.com/a/26684859).
354
354
355
355
Obs.: Em 2020, junto com a mudança do tema, achei melhor simplificar e me livrar dessa divisão. Minha vida tem sido 34,5% mais fácil desde então.
0 commit comments