SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
Sta$c  Site  Generator
@bruno2ms
Como  começar?
Ruby  +  Liquid  +  YAML
Como  funciona?
• Converte  Markdown,  Tex$le  e  HTML  com  
Liquid  Tags  
• Aplica  templates  e  Layout  Pages  
• Converte  arquivos  sass  
• Se  aproveita  da  estrutura  de  pastas  para  
gerar  blog  e  posts  
• Transforma  isso  tudo  em  HTML  está$co
O  que  já  vem  pronto?
• Paginação  
• Estrutura  personalizada  de  permalinks  
• Posts  relacionados  
• Syntax  highlight  
• Conversão  Markdown/Tex$le
Estrutura  Inicial
Configuração  Centralizada
_config.yml
Configuração  YAML
• Configuração  de  variáveis  globais  
• Variáveis  reu$lizáveis  de  acordo  com  
estrutura  dos  arquivos  
• Adicione  as  chaves  que  desejar  para  
reaproveitar  em  todo  o  site
Exemplo
YAML  Front  MaJer
---
layout: post
title: Blogging Like a Hacker
permalink: /path/to/my/page/
published: true
categories: [categoria1, categoria2]
---
<!DOCTYPE HTML>
<html>
<head>
<title>{{ site.name }} - {{ page.title }}</title>
</head>
<body>
...
Deploy?
• Instancia  grá$s  do  Heroku  
• GitHub  Pages  
• Direto  para  a  Amazon  S3  
• Qualquer  lugar  que  aceite  páginas  está$cas  
• hTp://jekyllrb.com/docs/deployment-­‐
methods/
Comentários  do  Blog?
Extender  
-­‐ Disqus  (exemplo)  
-­‐ Intense  Debate  
-­‐ Facebook  Comments
Disqus
...
layout: default
comments: true
# other options
...
{% if page.comments %}
{% include disqus.html %}
{% endif %}
<div id="disqus_thread"></div>
<script type="text/javascript">
var disqus_shortname = ‘your_user';
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/
javascript'; dsq.async = true;
dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] ||
document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
sua_pagina.html
_includes/disqus.html
Data  Files?
_data/*/*.yml
_data/*/*.csv
_data/*/*.json
Data  Files
- name: Tom Preston-Werner
github: mojombo
- name: Parker Moore
github: parkr
- name: Liu Fengyun
github: liufengyun
<ul>
{% for member in site.data.members %}
<li>
<a href="https://github.com/{{ member.github }}">
{{ member.name }}
</a>
</li>
{% endfor %}
</ul>
index.yml
_data/members.yml
Data  Files
name: Bluesoft
members:
- name: Tom Preston-Werner
github: mojombo
- name: Parker Moore
github: parkr
_data/orgs/blueso.yml _data/orgs/webgoal.yml
name: Webgoal
members:
- name: Tom Preston-Werner
github: mojombo
- name: Parker Moore
github: parkr
<ul>
{% for org_hash in site.data.orgs %}
{% assign org = org_hash[1] %}
<li>
<a href="https://github.com/{{ org.username }}">
{{ org.name }}
</a>
({{ org.members | size }} members)
</li>
{% endfor %}
</ul>
Arquitetura  de  Plugins
(facilidade  de  extender)
_plugins/*.rb
hTp://jekyllrb.com/docs/plugins/
OBRIGADO
(confira  as  próximas  apresentações  avançadas)
@bruno2ms

Más contenido relacionado

Destacado

Introduction to blogging with Jekyll
Introduction to blogging with JekyllIntroduction to blogging with Jekyll
Introduction to blogging with JekyllEric Lathrop
 
Jekyll - Liquid for noobs
Jekyll - Liquid for noobsJekyll - Liquid for noobs
Jekyll - Liquid for noobsBruno Mendes
 
Montes Claros - Cursar tecnologia no interior de Minas Gerais
Montes Claros - Cursar tecnologia no interior de Minas GeraisMontes Claros - Cursar tecnologia no interior de Minas Gerais
Montes Claros - Cursar tecnologia no interior de Minas GeraisBruno Mendes
 
Pomodoro technique
Pomodoro techniquePomodoro technique
Pomodoro techniqueBruno Mendes
 
Eu escolho ser feliz!
Eu escolho ser feliz!Eu escolho ser feliz!
Eu escolho ser feliz!Felipe Faias
 
Muito prazer, nós somos a família PEDREIRA!
Muito prazer, nós somos a família PEDREIRA!Muito prazer, nós somos a família PEDREIRA!
Muito prazer, nós somos a família PEDREIRA!Felipe Faias
 
Tá fazendo o que aqui?
Tá fazendo o que aqui?Tá fazendo o que aqui?
Tá fazendo o que aqui?Felipe Faias
 
Como falhar como líder
Como falhar como líderComo falhar como líder
Como falhar como líderBruno Mendes
 
Why SASS - in 10 minutos
Why SASS - in 10 minutosWhy SASS - in 10 minutos
Why SASS - in 10 minutosBruno Mendes
 
Tá esperando o que?
Tá esperando o que?Tá esperando o que?
Tá esperando o que?Felipe Faias
 
Agilidade: como começar?
Agilidade: como começar?Agilidade: como começar?
Agilidade: como começar?Alex Chastinet
 
A arte de ser feliz
A arte de ser felizA arte de ser feliz
A arte de ser felizHelio Cruz
 
Fisica da agilidade
Fisica da agilidadeFisica da agilidade
Fisica da agilidadeBruno Mendes
 
Ser Feliz é Uma Decisão
Ser Feliz é Uma DecisãoSer Feliz é Uma Decisão
Ser Feliz é Uma DecisãoPower Point
 
Liderança com Inteligência Emocional
Liderança com Inteligência EmocionalLiderança com Inteligência Emocional
Liderança com Inteligência EmocionalLeonardo Filardi
 

Destacado (20)

Introduction to blogging with Jekyll
Introduction to blogging with JekyllIntroduction to blogging with Jekyll
Introduction to blogging with Jekyll
 
Jekyll - Liquid for noobs
Jekyll - Liquid for noobsJekyll - Liquid for noobs
Jekyll - Liquid for noobs
 
Montes Claros - Cursar tecnologia no interior de Minas Gerais
Montes Claros - Cursar tecnologia no interior de Minas GeraisMontes Claros - Cursar tecnologia no interior de Minas Gerais
Montes Claros - Cursar tecnologia no interior de Minas Gerais
 
Pomodoro technique
Pomodoro techniquePomodoro technique
Pomodoro technique
 
OOCSS
OOCSSOOCSS
OOCSS
 
Eu escolho ser feliz!
Eu escolho ser feliz!Eu escolho ser feliz!
Eu escolho ser feliz!
 
No silencio da minha mente
No silencio da minha menteNo silencio da minha mente
No silencio da minha mente
 
Muito prazer, nós somos a família PEDREIRA!
Muito prazer, nós somos a família PEDREIRA!Muito prazer, nós somos a família PEDREIRA!
Muito prazer, nós somos a família PEDREIRA!
 
Tá fazendo o que aqui?
Tá fazendo o que aqui?Tá fazendo o que aqui?
Tá fazendo o que aqui?
 
Como falhar como líder
Como falhar como líderComo falhar como líder
Como falhar como líder
 
Lean ux
Lean uxLean ux
Lean ux
 
Why SASS - in 10 minutos
Why SASS - in 10 minutosWhy SASS - in 10 minutos
Why SASS - in 10 minutos
 
Tá esperando o que?
Tá esperando o que?Tá esperando o que?
Tá esperando o que?
 
Anything You Want
Anything You WantAnything You Want
Anything You Want
 
Agilidade: como começar?
Agilidade: como começar?Agilidade: como começar?
Agilidade: como começar?
 
A arte de ser feliz
A arte de ser felizA arte de ser feliz
A arte de ser feliz
 
Fisica da agilidade
Fisica da agilidadeFisica da agilidade
Fisica da agilidade
 
Ser Feliz é Uma Decisão
Ser Feliz é Uma DecisãoSer Feliz é Uma Decisão
Ser Feliz é Uma Decisão
 
Vida saudável
Vida saudávelVida saudável
Vida saudável
 
Liderança com Inteligência Emocional
Liderança com Inteligência EmocionalLiderança com Inteligência Emocional
Liderança com Inteligência Emocional
 

Similar a Jekyll

Wordpress Introdução ao Desenvolvimento de Templates
Wordpress Introdução ao Desenvolvimento de TemplatesWordpress Introdução ao Desenvolvimento de Templates
Wordpress Introdução ao Desenvolvimento de TemplatesWesley R. Bezerra
 
Wordpress além do blog
Wordpress além do blogWordpress além do blog
Wordpress além do blogMateus Neves
 
Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Gustavo Zimmermann
 
HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2Israel Messias
 
Wordpress e suas funções
Wordpress e suas funçõesWordpress e suas funções
Wordpress e suas funçõesDaniel Marcos
 
HTML5 Básico: Marcação (aula 1)
HTML5 Básico: Marcação (aula 1)HTML5 Básico: Marcação (aula 1)
HTML5 Básico: Marcação (aula 1)Gustavo Zimmermann
 
Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Sérgio Vilar
 
Otimização Front-end para WordPress
Otimização Front-end para WordPressOtimização Front-end para WordPress
Otimização Front-end para WordPressGuga Alves
 
O que todos os developers devem saber sobre seo
O que todos os developers devem saber sobre seoO que todos os developers devem saber sobre seo
O que todos os developers devem saber sobre seointrofini
 
SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.
SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.
SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.Aline Couto (alineideias)
 
2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdfRubenManhia
 
CSS com SASS e SMACSS faz BEM
CSS com SASS e SMACSS faz BEMCSS com SASS e SMACSS faz BEM
CSS com SASS e SMACSS faz BEMWellington Dutra
 

Similar a Jekyll (20)

Wordpress Introdução ao Desenvolvimento de Templates
Wordpress Introdução ao Desenvolvimento de TemplatesWordpress Introdução ao Desenvolvimento de Templates
Wordpress Introdução ao Desenvolvimento de Templates
 
Jekyll 101
Jekyll 101Jekyll 101
Jekyll 101
 
Wordpress além do blog
Wordpress além do blogWordpress além do blog
Wordpress além do blog
 
Apoio1020 apostila html
Apoio1020 apostila htmlApoio1020 apostila html
Apoio1020 apostila html
 
Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)Introdução ao Web Design: Aula 5 - HTML (part. 1)
Introdução ao Web Design: Aula 5 - HTML (part. 1)
 
ASP.NET - Aparência do WebSite
ASP.NET - Aparência do WebSiteASP.NET - Aparência do WebSite
ASP.NET - Aparência do WebSite
 
HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2HTML - HyperText Markup Language - 2
HTML - HyperText Markup Language - 2
 
Curso de WordPress
Curso de WordPressCurso de WordPress
Curso de WordPress
 
Wordpress e suas funções
Wordpress e suas funçõesWordpress e suas funções
Wordpress e suas funções
 
Aula30 trevisan
Aula30 trevisanAula30 trevisan
Aula30 trevisan
 
Diazo para todos
Diazo para todosDiazo para todos
Diazo para todos
 
HTML5 Básico: Marcação (aula 1)
HTML5 Básico: Marcação (aula 1)HTML5 Básico: Marcação (aula 1)
HTML5 Básico: Marcação (aula 1)
 
Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)
 
Otimização Front-end para WordPress
Otimização Front-end para WordPressOtimização Front-end para WordPress
Otimização Front-end para WordPress
 
O que todos os developers devem saber sobre seo
O que todos os developers devem saber sobre seoO que todos os developers devem saber sobre seo
O que todos os developers devem saber sobre seo
 
SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.
SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.
SEO On-Page Checklist - Construindo bem a casa antes de convidar os amigos.
 
2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf2. Introdução ao CSSpptx.pdf
2. Introdução ao CSSpptx.pdf
 
HTML Básico
HTML BásicoHTML Básico
HTML Básico
 
CSS com SASS e SMACSS faz BEM
CSS com SASS e SMACSS faz BEMCSS com SASS e SMACSS faz BEM
CSS com SASS e SMACSS faz BEM
 
Mini curso html5 slides
Mini curso html5   slidesMini curso html5   slides
Mini curso html5 slides
 

Más de Bruno Mendes

Google Design sprint
Google Design sprintGoogle Design sprint
Google Design sprintBruno Mendes
 
Building a ux team
Building a ux team Building a ux team
Building a ux team Bruno Mendes
 
Ciência do conforto
Ciência do confortoCiência do conforto
Ciência do confortoBruno Mendes
 
Personas: O que são? Onde vivem? Como funcionam?
Personas: O que são? Onde vivem? Como funcionam?Personas: O que são? Onde vivem? Como funcionam?
Personas: O que são? Onde vivem? Como funcionam?Bruno Mendes
 
Fatores Cesar no Atendimento Ao Cliente
Fatores Cesar no Atendimento Ao ClienteFatores Cesar no Atendimento Ao Cliente
Fatores Cesar no Atendimento Ao ClienteBruno Mendes
 

Más de Bruno Mendes (8)

Google Design sprint
Google Design sprintGoogle Design sprint
Google Design sprint
 
Will js kill css
Will js kill cssWill js kill css
Will js kill css
 
Ux is not UI
Ux is not UIUx is not UI
Ux is not UI
 
Building a ux team
Building a ux team Building a ux team
Building a ux team
 
Ciência do conforto
Ciência do confortoCiência do conforto
Ciência do conforto
 
Personas: O que são? Onde vivem? Como funcionam?
Personas: O que são? Onde vivem? Como funcionam?Personas: O que são? Onde vivem? Como funcionam?
Personas: O que são? Onde vivem? Como funcionam?
 
Pense como dono
Pense como donoPense como dono
Pense como dono
 
Fatores Cesar no Atendimento Ao Cliente
Fatores Cesar no Atendimento Ao ClienteFatores Cesar no Atendimento Ao Cliente
Fatores Cesar no Atendimento Ao Cliente
 

Jekyll

  • 3. Ruby  +  Liquid  +  YAML
  • 4. Como  funciona? • Converte  Markdown,  Tex$le  e  HTML  com   Liquid  Tags   • Aplica  templates  e  Layout  Pages   • Converte  arquivos  sass   • Se  aproveita  da  estrutura  de  pastas  para   gerar  blog  e  posts   • Transforma  isso  tudo  em  HTML  está$co
  • 5. O  que  já  vem  pronto? • Paginação   • Estrutura  personalizada  de  permalinks   • Posts  relacionados   • Syntax  highlight   • Conversão  Markdown/Tex$le
  • 8. Configuração  YAML • Configuração  de  variáveis  globais   • Variáveis  reu$lizáveis  de  acordo  com   estrutura  dos  arquivos   • Adicione  as  chaves  que  desejar  para   reaproveitar  em  todo  o  site
  • 10. YAML  Front  MaJer --- layout: post title: Blogging Like a Hacker permalink: /path/to/my/page/ published: true categories: [categoria1, categoria2] --- <!DOCTYPE HTML> <html> <head> <title>{{ site.name }} - {{ page.title }}</title> </head> <body> ...
  • 11. Deploy? • Instancia  grá$s  do  Heroku   • GitHub  Pages   • Direto  para  a  Amazon  S3   • Qualquer  lugar  que  aceite  páginas  está$cas   • hTp://jekyllrb.com/docs/deployment-­‐ methods/
  • 12. Comentários  do  Blog? Extender   -­‐ Disqus  (exemplo)   -­‐ Intense  Debate   -­‐ Facebook  Comments
  • 13. Disqus ... layout: default comments: true # other options ... {% if page.comments %} {% include disqus.html %} {% endif %} <div id="disqus_thread"></div> <script type="text/javascript"> var disqus_shortname = ‘your_user'; (function() { var dsq = document.createElement('script'); dsq.type = 'text/ javascript'; dsq.async = true; dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); })(); </script> sua_pagina.html _includes/disqus.html
  • 15. Data  Files - name: Tom Preston-Werner github: mojombo - name: Parker Moore github: parkr - name: Liu Fengyun github: liufengyun <ul> {% for member in site.data.members %} <li> <a href="https://github.com/{{ member.github }}"> {{ member.name }} </a> </li> {% endfor %} </ul> index.yml _data/members.yml
  • 16. Data  Files name: Bluesoft members: - name: Tom Preston-Werner github: mojombo - name: Parker Moore github: parkr _data/orgs/blueso.yml _data/orgs/webgoal.yml name: Webgoal members: - name: Tom Preston-Werner github: mojombo - name: Parker Moore github: parkr <ul> {% for org_hash in site.data.orgs %} {% assign org = org_hash[1] %} <li> <a href="https://github.com/{{ org.username }}"> {{ org.name }} </a> ({{ org.members | size }} members) </li> {% endfor %} </ul>
  • 17. Arquitetura  de  Plugins (facilidade  de  extender) _plugins/*.rb hTp://jekyllrb.com/docs/plugins/
  • 18. OBRIGADO (confira  as  próximas  apresentações  avançadas) @bruno2ms