diff --git a/source/_partials/badges.html.twig b/source/_partials/badges.html.twig
new file mode 100644
index 00000000..ea7286f7
--- /dev/null
+++ b/source/_partials/badges.html.twig
@@ -0,0 +1,9 @@
+
diff --git a/source/_partials/post/about-author.html.twig b/source/_partials/post/about-author.html.twig
new file mode 100644
index 00000000..3f9d0f3e
--- /dev/null
+++ b/source/_partials/post/about-author.html.twig
@@ -0,0 +1,7 @@
+
+
About the Author
+
+
+
+
{{ site.author.bio|raw }}
+
diff --git a/source/_partials/post/feedback.html.twig b/source/_partials/post/feedback.html.twig
new file mode 100644
index 00000000..20867a87
--- /dev/null
+++ b/source/_partials/post/feedback.html.twig
@@ -0,0 +1,3 @@
+
+ Have feedback on this post? Email me or send me a tweet.
+
diff --git a/source/_partials/post/pager.html.twig b/source/_partials/post/pager.html.twig
new file mode 100644
index 00000000..87bfa930
--- /dev/null
+++ b/source/_partials/post/pager.html.twig
@@ -0,0 +1,6 @@
+{% if page.next_post or page.previous_post %}
+
+{% endif %}
diff --git a/source/_partials/post/related.html.twig b/source/_partials/post/related.html.twig
new file mode 100644
index 00000000..f865b49e
--- /dev/null
+++ b/source/_partials/post/related.html.twig
@@ -0,0 +1,11 @@
+{% if page.related -%}
+ Related Posts
+
+
+{%- endif %}
diff --git a/source/_partials/post/tags.html.twig b/source/_partials/post/tags.html.twig
new file mode 100644
index 00000000..6f4862de
--- /dev/null
+++ b/source/_partials/post/tags.html.twig
@@ -0,0 +1,8 @@
+{% if page.tags %}
+
+ Tags:
+ {% for tag in page.tags %}
+ {{ tag }}{% if not loop.last %}, {% endif %}
+ {% endfor %}
+
+{% endif %}
diff --git a/source/_partials/posts/latest.html.twig b/source/_partials/posts/latest.html.twig
index ea3cd9bc..14e58db0 100644
--- a/source/_partials/posts/latest.html.twig
+++ b/source/_partials/posts/latest.html.twig
@@ -1,16 +1,18 @@
-
-
Latest blog posts
+{% if page.url == '/.' %}
+
+
Latest blog posts
-
- {% for post in data.posts|slice(0, site.latest_posts) %}
- -
-
-
- {{ post.title }}
-
- -
- {{ post.date|date(site.default_date_format) }}
-
- {% endfor %}
-
-
+
+ {% for post in data.posts|slice(0, site.latest_posts) %}
+ -
+
+
+ {{ post.title }}
+
+ -
+ {{ post.date|date(site.default_date_format) }}
+
+ {% endfor %}
+
+
+{% endif %}
diff --git a/source/_partials/projects/company.html.twig b/source/_partials/project/company.html.twig
similarity index 100%
rename from source/_partials/projects/company.html.twig
rename to source/_partials/project/company.html.twig
diff --git a/source/_partials/project/image.html.twig b/source/_partials/project/image.html.twig
new file mode 100644
index 00000000..9595fcb0
--- /dev/null
+++ b/source/_partials/project/image.html.twig
@@ -0,0 +1,3 @@
+{% if page.image -%}
+
+{%- endif %}
diff --git a/source/_partials/projects/skills.html.twig b/source/_partials/project/skills.html.twig
similarity index 100%
rename from source/_partials/projects/skills.html.twig
rename to source/_partials/project/skills.html.twig
diff --git a/source/_partials/project/website.html.twig b/source/_partials/project/website.html.twig
new file mode 100644
index 00000000..b53e444a
--- /dev/null
+++ b/source/_partials/project/website.html.twig
@@ -0,0 +1,5 @@
+{% if page.website %}
+
+ View the website
+
+{% endif %}
diff --git a/source/_partials/sidebar.html.twig b/source/_partials/sidebar.html.twig
index 3e18d9b2..cfde2fca 100644
--- a/source/_partials/sidebar.html.twig
+++ b/source/_partials/sidebar.html.twig
@@ -1,21 +1,9 @@
{% block sidebar_wrapper %}
{% block sidebar %}
-
-
- {% include('availability') %}
-
- {% if page.url == '/.' %}
- {% include ('posts/latest') %}
- {% endif %}
+ {{ include('badges') }}
+ {{ include('availability') }}
+ {{ include('posts/latest') }}
{% endblock %}
{% endblock %}
diff --git a/source/_partials/talk/event.html.twig b/source/_partials/talk/event.html.twig
new file mode 100644
index 00000000..81440aae
--- /dev/null
+++ b/source/_partials/talk/event.html.twig
@@ -0,0 +1,14 @@
+{% if page.event %}
+ Details
+
+
+{% endif %}
diff --git a/source/_partials/talk/slides.html.twig b/source/_partials/talk/slides.html.twig
new file mode 100644
index 00000000..9a2271f4
--- /dev/null
+++ b/source/_partials/talk/slides.html.twig
@@ -0,0 +1,9 @@
+{% if page.slides.embed %}
+
+
Slides
+
+
+ {{ page.slides.embed|raw }}
+
+
+{% endif %}
diff --git a/source/_partials/talk/video.html.twig b/source/_partials/talk/video.html.twig
new file mode 100644
index 00000000..96a9dd87
--- /dev/null
+++ b/source/_partials/talk/video.html.twig
@@ -0,0 +1,7 @@
+{% if page.video.embed %}
+ Video
+
+
+ {{ page.video.embed|raw }}
+
+{% endif %}
diff --git a/source/_views/post.html.twig b/source/_views/post.html.twig
index 9b7b66a3..2385de40 100644
--- a/source/_views/post.html.twig
+++ b/source/_views/post.html.twig
@@ -1,47 +1,13 @@
{% extends 'default' %}
{% block content_wrapper %}
- {% include('post/header') %}
+ {{ include('post/header') }}
{% block content %}{% endblock %}
-
- Have feedback on this post? Email me or send me a tweet.
-
-
- {% if page.related -%}
- Related Posts
-
-
- {%- endif %}
-
- {% if page.tags %}
-
- Tags:
- {% for tag in page.tags %}
- {{ tag }}{% if not loop.last %}, {% endif %}
- {% endfor %}
-
- {% endif %}
-
-
-
About the Author
-
-
-
-
{{ site.author.bio|raw }}
-
-
- {% if page.next_post or page.previous_post %}
-
- {% endif %}
+ {{ include('post/feedback') }}
+ {{ include('post/related') }}
+ {{ include('post/tags') }}
+ {{ include('post/about-author') }}
+ {{ include('post/pager') }}
{% endblock %}
diff --git a/source/_views/project.html.twig b/source/_views/project.html.twig
index b9977cd5..a5228201 100644
--- a/source/_views/project.html.twig
+++ b/source/_views/project.html.twig
@@ -3,18 +3,11 @@
{% block body_classes 'page--project' %}
{% block content_wrapper %}
- {% if page.image -%}
-
- {%- endif %}
+ {{ include('project/image') }}
{% block content %}{% endblock %}
- {% if page.website %}
-
- View the website
-
- {% endif %}
-
- {{ include('projects/skills') }}
- {{ include('projects/company') }}
+ {{ include('project/website') }}
+ {{ include('project/skills') }}
+ {{ include('project/company') }}
{% endblock %}
diff --git a/source/_views/talk.html.twig b/source/_views/talk.html.twig
index 40296195..06ba181d 100644
--- a/source/_views/talk.html.twig
+++ b/source/_views/talk.html.twig
@@ -7,36 +7,7 @@
{% block content_wrapper %}
{% block content %}{% endblock %}
- {% if page.event %}
- Details
-
-
- {% endif %}
-
- {% if page.slides.embed %}
-
-
Slides
-
-
- {{ page.slides.embed|raw }}
-
-
- {% endif %}
-
- {% if page.video.embed %}
- Video
-
-
- {{ page.video.embed|raw }}
-
- {% endif %}
+ {{ include('talk/event') }}
+ {{ include('talk/slides') }}
+ {{ include('talk/video') }}
{% endblock %}
diff --git a/source/blog.html b/source/blog.html
index 47e15dfb..7d999231 100644
--- a/source/blog.html
+++ b/source/blog.html
@@ -11,19 +11,22 @@ use:
Blog
- {% for post in page.pagination.items %}
- -
- {% include 'post-header' with { page: post, title_tag: 'h2' } %}
+ {% for post in page.pagination.items %}
+
-
+ {{ include('post/header', {
+ page: post,
+ title_tag: 'h2'
+ }) }}
- {% if post.blocks.excerpt %}
- {{ post.blocks.excerpt|raw }}
- {% else %}
-
{{ post.blocks.content|raw|striptags|split(' ')|slice(0,50)|join(' ')|replace({ 'h2':'h3' }) }} …
- {% endif %}
+ {% if post.blocks.excerpt %}
+ {{ post.blocks.excerpt|raw }}
+ {% else %}
+ {{ post.blocks.content|raw|striptags|split(' ')|slice(0,50)|join(' ')|replace({ 'h2':'h3' }) }} …
+ {% endif %}
- Read more →
-
- {% endfor %}
+ Read more →
+
+ {% endfor %}
{% if page.pagination.previous_page or page.pagination.next_page %}