Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/heyeshuang/hugo-theme-tokiwa.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHe Yeshuang <yeshuanghe@gmail.com>2020-03-29 16:30:26 +0300
committerHe Yeshuang <yeshuanghe@gmail.com>2020-03-29 16:30:26 +0300
commitae31923d3169caea74aca2c630d87b6abc6086ce (patch)
tree56d2ea8f34ae0dc394a6743e96f92244bd704fe3 /layouts
init from jimfrenette/hugo-starter
Diffstat (limited to 'layouts')
-rwxr-xr-xlayouts/404.html8
-rwxr-xr-xlayouts/_default/baseof.html50
-rwxr-xr-xlayouts/_default/list.html15
-rwxr-xr-xlayouts/_default/single.html40
-rw-r--r--layouts/_default/taxonomy.html16
-rw-r--r--layouts/_default/terms.html22
-rwxr-xr-xlayouts/index.html57
-rw-r--r--layouts/page/single.html18
-rw-r--r--layouts/partials/i18nlist.html10
-rw-r--r--layouts/partials/menu-contextual.html33
-rw-r--r--layouts/partials/new-window-icon.html2
-rw-r--r--layouts/partials/page-header.html5
-rw-r--r--layouts/partials/site-favicon.html3
-rwxr-xr-xlayouts/partials/site-footer.html8
-rwxr-xr-xlayouts/partials/site-header.html15
-rw-r--r--layouts/partials/site-navigation.html22
-rw-r--r--layouts/partials/site-scripts.html4
-rw-r--r--layouts/partials/social-follow.html50
-rw-r--r--layouts/partials/summary.html13
-rw-r--r--layouts/partials/svg/facebook.svg1
-rw-r--r--layouts/partials/svg/github.svg3
-rw-r--r--layouts/partials/svg/gitlab.svg1
-rw-r--r--layouts/partials/svg/instagram.svg1
-rw-r--r--layouts/partials/svg/linkedin.svg3
-rw-r--r--layouts/partials/svg/medium.svg3
-rw-r--r--layouts/partials/svg/new-window.svg3
-rw-r--r--layouts/partials/svg/twitter.svg1
-rw-r--r--layouts/partials/svg/youtube.svg1
-rw-r--r--layouts/partials/tags.html9
-rw-r--r--layouts/post/list.html23
-rw-r--r--layouts/post/summary.html15
-rw-r--r--layouts/robots.txt7
32 files changed, 462 insertions, 0 deletions
diff --git a/layouts/404.html b/layouts/404.html
new file mode 100755
index 0000000..7e30c1c
--- /dev/null
+++ b/layouts/404.html
@@ -0,0 +1,8 @@
+{{ define "header" }}{{ partial "page-header.html" . }}{{ end }}
+{{ define "main" }}
+<article>
+ <h1>
+ This is not the page you were looking for
+ </h1>
+</article>
+{{ end }} \ No newline at end of file
diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html
new file mode 100755
index 0000000..84ed70c
--- /dev/null
+++ b/layouts/_default/baseof.html
@@ -0,0 +1,50 @@
+<!DOCTYPE html>
+<html lang="{{ $.Site.LanguageCode | default "en" }}">
+
+<head>
+ <meta charset="utf-8">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ {{/* NOTE: the Site's title, and if there is a page title, that is set too */}}
+ <title>{{ block "title" . }}{{ .Site.Title }} {{ with .Params.Title }} | {{ . }}{{ end }}{{ end }}</title>
+ <meta name="viewport" content="width=device-width,minimum-scale=1">
+ {{ .Hugo.Generator }}
+ {{/* NOTE: For Production make sure you add `HUGO_ENV="production"` before your build command */}}
+ {{ if eq (getenv "HUGO_ENV") "production" | or (eq .Site.Params.env "production") }}
+ <META NAME="ROBOTS" CONTENT="INDEX, FOLLOW">
+ {{ else }}
+ <META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
+ {{ end }}
+
+ {{ $stylesheet := .Site.Data.webpack_assets.app }}
+ {{ with $stylesheet.css }}
+ <link href="{{ relURL (printf "%s%s" "dist/" .) }}" rel="stylesheet">
+ {{ end }}
+
+ {{ range .Site.Params.custom_css }}
+ <link rel="stylesheet" href="{{ relURL ($.Site.BaseURL) }}{{ . }}">
+ {{ end }}
+
+ {{ block "favicon" . }}
+ {{ partial "site-favicon.html" . }}
+ {{ end }}
+
+ {{ if .RSSLink }}
+ <link href="{{ .RSSLink }}" rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" />
+ <link href="{{ .RSSLink }}" rel="feed" type="application/rss+xml" title="{{ .Site.Title }}" />
+ {{ end }}
+
+ {{ if eq (getenv "HUGO_ENV") "production" | or (eq .Site.Params.env "production") }}
+ {{ template "_internal/google_analytics_async.html" . }}
+ {{ end }}
+</head>
+
+<body>
+ {{ block "header" . }}{{ partial "site-header.html" .}}{{ end }}
+ <main role="main">
+ {{ block "main" . }}{{ end }}
+ </main>
+ {{ block "footer" . }}{{ partial "site-footer.html" . }}{{ end }}
+ {{ block "scripts" . }}{{ partial "site-scripts.html" . }}{{ end }}
+</body>
+
+</html> \ No newline at end of file
diff --git a/layouts/_default/list.html b/layouts/_default/list.html
new file mode 100755
index 0000000..893c10b
--- /dev/null
+++ b/layouts/_default/list.html
@@ -0,0 +1,15 @@
+{{ define "main" }}
+<article>
+ <section>
+ {{- .Content -}}
+ </section>
+ <section>
+ {{ range .Paginator.Pages }}
+ <div>
+ {{- partial "summary.html" . -}}
+ </div>
+ {{ end }}
+ </section>
+ {{- template "_internal/pagination.html" . -}}
+</article>
+{{ end }} \ No newline at end of file
diff --git a/layouts/_default/single.html b/layouts/_default/single.html
new file mode 100755
index 0000000..091f684
--- /dev/null
+++ b/layouts/_default/single.html
@@ -0,0 +1,40 @@
+{{ define "header" }}
+{{/* We can override any block in the baseof file be defining it in the template */}}
+{{ partial "page-header.html" . }}
+{{ end }}
+
+{{ define "main" }}
+{{ $section := .Site.GetPage "section" .Section }}
+<article>
+
+ <header>
+ <p>
+ {{/*
+ CurrentSection allows us to use the section title instead of inferring from the folder.
+ https://gohugo.io/variables/page/#section-variables-and-methods
+ */}}
+ {{with .CurrentSection.Title }}{{. | upper }}{{end}}
+ </p>
+ <h1>
+ {{- .Title -}}
+ </h1>
+ {{/* Hugo uses Go's date formatting is set by example. Here are two formats */}}
+ <time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">
+ {{- .Date.Format "January 2, 2006" -}}
+ </time>
+ </header>
+
+ <section>
+ {{- .Content -}}
+ {{- partial "tags.html" . -}}
+ <div>
+ {{ template "_internal/disqus.html" . }}
+ </div>
+ </section>
+
+ <aside>
+ {{- partial "menu-contextual.html" . -}}
+ </aside>
+
+</article>
+{{ end }} \ No newline at end of file
diff --git a/layouts/_default/taxonomy.html b/layouts/_default/taxonomy.html
new file mode 100644
index 0000000..682cf7b
--- /dev/null
+++ b/layouts/_default/taxonomy.html
@@ -0,0 +1,16 @@
+{{ define "main" }}
+<article>
+ <div>
+ <p>Below you will find pages that utilize the taxonomy term “{{ .Title }}”</p>
+ </div>
+</article>
+<div>
+ <section>
+ {{ range .Pages }}
+ <div>
+ {{ partial "summary.html" . }}
+ </div>
+ {{ end }}
+ </section>
+</div>
+{{ end }} \ No newline at end of file
diff --git a/layouts/_default/terms.html b/layouts/_default/terms.html
new file mode 100644
index 0000000..4b2c2d4
--- /dev/null
+++ b/layouts/_default/terms.html
@@ -0,0 +1,22 @@
+{{ define "main" }}
+{{ $data := .Data }}
+<article>
+ <div>
+ {{ .Content }}
+ </div>
+</article>
+<div>
+ <section>
+ {{ range $key, $value := .Data.Terms }}
+ <h2>
+ <a href="{{ "/" | relLangURL }}{{ $.Data.Plural | urlize }}/{{ $key | urlize }}">
+ {{ $.Data.Singular | humanize }}: {{ $key }}
+ </a>
+ </h2>
+ {{ range $value.Pages }}
+ {{ partial "summary.html" . }}
+ {{ end }}
+ {{ end }}
+ </section>
+</div>
+{{ end }} \ No newline at end of file
diff --git a/layouts/index.html b/layouts/index.html
new file mode 100755
index 0000000..cf2afc9
--- /dev/null
+++ b/layouts/index.html
@@ -0,0 +1,57 @@
+{{ define "main" }}
+<article>
+ {{ .Content }}
+</article>
+{{/* Define a section to pull recent posts from. For Hugo 0.20 this will default to the section with the most number of
+pages. */}}
+{{ $mainSections := .Site.Params.mainSections | default (slice "post") }}
+{{/* Create a variable with that section to use in multiple places. */}}
+{{ $section := where .Site.RegularPages "Section" "in" $mainSections }}
+{{/* Check to see if the section is defined for ranging through it */}}
+{{ $section_count := len $section }}
+{{ if ge $section_count 1 }}
+{{/* Derive the section name */}}
+{{ $section_name := index (.Site.Params.mainSections) 0 }}
+
+<div>
+ {{/* Use $section_name to get the section title. Use "with" to only show it if it exists */}}
+ {{ with .Site.GetPage "section" $section_name }}
+ <h1>
+ Recent {{ .Title }}
+ </h1>
+ {{ end }}
+
+ {{ $n_posts := $.Param "recent_posts_number" | default 3 }}
+
+ <section>
+ {{/* Range through the first $n_posts items of the section */}}
+ {{ range (first $n_posts $section) }}
+ <div>
+ {{ partial "summary.html" . }}
+ </div>
+ {{ end }}
+ </section>
+
+ {{ if ge $section_count (add $n_posts 1) }}
+ <section>
+ <h1>More</h1>
+ {{/* Now, range through the next four after the initial $n_posts items. Nest the requirements, "after" then "first"
+ on the outside */}}
+ {{ range (first 4 (after $n_posts $section)) }}
+ <h2>
+ <a href="{{ .Permalink }}">
+ {{ .Title }}
+ </a>
+ </h2>
+ {{ end }}
+
+ {{/* As above, Use $section_name to get the section title, and URL. Use "with" to only show it if it exists */}}
+ {{ with .Site.GetPage "section" $section_name }}
+ <a href="{{ .Permalink }}">All {{.Title }}</a>
+ {{ end }}
+ </section>
+ {{ end }}
+
+</div>
+{{ end }}
+{{ end }} \ No newline at end of file
diff --git a/layouts/page/single.html b/layouts/page/single.html
new file mode 100644
index 0000000..22395ac
--- /dev/null
+++ b/layouts/page/single.html
@@ -0,0 +1,18 @@
+{{ define "header" }}{{ partial "page-header.html" . }}{{ end }}
+{{ define "main" }}
+<div>
+ <article>
+ <header>
+ <p>
+ {{ humanize .Section | upper }}
+ </p>
+ <h1>
+ {{ .Title }}
+ </h1>
+ </header>
+ <div>
+ {{ .Content }}
+ </div>
+ </article>
+</div>
+{{ end }} \ No newline at end of file
diff --git a/layouts/partials/i18nlist.html b/layouts/partials/i18nlist.html
new file mode 100644
index 0000000..1df9aa5
--- /dev/null
+++ b/layouts/partials/i18nlist.html
@@ -0,0 +1,10 @@
+{{ if .IsTranslated }}
+<h4>{{ i18n "translations" }}</h4>
+<ul>
+ {{ range .Translations }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Lang }}</a>
+ </li>
+ {{ end}}
+</ul>
+{{ end }} \ No newline at end of file
diff --git a/layouts/partials/menu-contextual.html b/layouts/partials/menu-contextual.html
new file mode 100644
index 0000000..6f93ab0
--- /dev/null
+++ b/layouts/partials/menu-contextual.html
@@ -0,0 +1,33 @@
+{{/*
+Use Hugo's native Table of contents feature. You must set `toc: true` in your parameters for this to show.
+https://gohugo.io/content-management/toc/
+*/}}
+
+{{- if .Params.toc -}}
+<div>
+ <p>What's in this {{ humanize .Type }}</p>
+ {{ .TableOfContents }}
+</div>
+{{- end -}}
+
+{{/*
+Use Hugo's native related content feature to pull in content that may have similar parameters, like tags. etc.
+https://gohugo.io/content-management/related/
+*/}}
+
+{{ $related := .Site.RegularPages.Related . | first 15 }}
+
+{{ with $related }}
+<div>
+ <p>Related</p>
+ <ul>
+ {{ range . }}
+ <li>
+ <a href="{{ .RelPermalink }}">
+ {{- .Title -}}
+ </a>
+ </li>
+ {{ end }}
+ </ul>
+</div>
+{{ end }} \ No newline at end of file
diff --git a/layouts/partials/new-window-icon.html b/layouts/partials/new-window-icon.html
new file mode 100644
index 0000000..8f422ca
--- /dev/null
+++ b/layouts/partials/new-window-icon.html
@@ -0,0 +1,2 @@
+{{ $new_window_icon_size := "8px" }}
+<span class="new-window">{{ partial "svg/new-window.svg" (dict "size" $new_window_icon_size) }}</span> \ No newline at end of file
diff --git a/layouts/partials/page-header.html b/layouts/partials/page-header.html
new file mode 100644
index 0000000..68e6733
--- /dev/null
+++ b/layouts/partials/page-header.html
@@ -0,0 +1,5 @@
+<header>
+ <div>
+ {{ partial "site-navigation.html" . }}
+ </div>
+</header> \ No newline at end of file
diff --git a/layouts/partials/site-favicon.html b/layouts/partials/site-favicon.html
new file mode 100644
index 0000000..ffb9642
--- /dev/null
+++ b/layouts/partials/site-favicon.html
@@ -0,0 +1,3 @@
+{{ if .Site.Params.favicon }}
+<link rel="shortcut icon" href="/{{ .Site.Params.favicon }}" type="image/x-icon" />
+{{ end }} \ No newline at end of file
diff --git a/layouts/partials/site-footer.html b/layouts/partials/site-footer.html
new file mode 100755
index 0000000..a921a4e
--- /dev/null
+++ b/layouts/partials/site-footer.html
@@ -0,0 +1,8 @@
+<footer role="contentinfo">
+ <div>
+ <a href="{{ .Site.BaseURL }}">
+ &copy; {{ now.Format "2006" }} {{ .Site.Title }}
+ </a>
+ <div>{{ partial "social-follow.html" . }}</div>
+ </div>
+</footer> \ No newline at end of file
diff --git a/layouts/partials/site-header.html b/layouts/partials/site-header.html
new file mode 100755
index 0000000..cdb90e5
--- /dev/null
+++ b/layouts/partials/site-header.html
@@ -0,0 +1,15 @@
+<header>
+ <div>
+ {{ partial "site-navigation.html" . }}
+ <div>
+ <h1>
+ {{ .Title | default .Site.Title }}
+ </h1>
+ {{ with .Params.description }}
+ <h2>
+ {{ . }}
+ </h2>
+ {{ end }}
+ </div>
+ </div>
+</header> \ No newline at end of file
diff --git a/layouts/partials/site-navigation.html b/layouts/partials/site-navigation.html
new file mode 100644
index 0000000..d6f2779
--- /dev/null
+++ b/layouts/partials/site-navigation.html
@@ -0,0 +1,22 @@
+<nav role="navigation">
+ <div>
+ <a href="{{ .Site.BaseURL }}">
+ {{ .Site.Title }}
+ </a>
+ <div>
+ {{ partial "i18nlist.html" . }}
+ {{ if .Site.Menus.main }}
+ <ul>
+ {{ range .Site.Menus.main }}
+ <li>
+ <a href="{{ .URL }}" title="{{ .Name }} page">
+ {{ .Name }}
+ </a>
+ </li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ {{ partial "social-follow.html" . }}
+ </div>
+ </div>
+</nav> \ No newline at end of file
diff --git a/layouts/partials/site-scripts.html b/layouts/partials/site-scripts.html
new file mode 100644
index 0000000..4e3b0ea
--- /dev/null
+++ b/layouts/partials/site-scripts.html
@@ -0,0 +1,4 @@
+{{ $script := .Site.Data.webpack_assets.app }}
+{{ with $script.js }}
+<script src="{{ relURL (printf "%s%s" "dist/" .) }}"></script>
+{{ end }} \ No newline at end of file
diff --git a/layouts/partials/social-follow.html b/layouts/partials/social-follow.html
new file mode 100644
index 0000000..e3ed753
--- /dev/null
+++ b/layouts/partials/social-follow.html
@@ -0,0 +1,50 @@
+<!-- TODO: Add follow intents where available TODO: Revisit color and hover color -->
+{{ $icon_size := "32px" }}
+{{ with .Param "facebook" }}
+<a href="{{ . }}" target="_blank" class="facebook" title="Facebook link" rel="noopener" aria-label="follow on Facebook——Opens in a new window">
+ {{ partial "svg/facebook.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }}
+{{ with .Param "twitter" }}
+<a href="{{ . }}" target="_blank" class="twitter" title="Twitter link" rel="noopener" aria-label="follow on Twitter——Opens in a new window">
+ {{ partial "svg/twitter.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }}
+{{ with .Param "instagram" }}
+<a href="{{ . }}" target="_blank" class="instagram" title="Instagram link" rel="noopener" aria-label="follow on Instagram——Opens in a new window">
+ {{ partial "svg/instagram.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }}
+{{ with .Param "youtube" }}
+<a href="{{ . }}" target="_blank" class="youtube" title="Youtube link" rel="noopener" aria-label="follow on Youtube——Opens in a new window">
+ {{ partial "svg/youtube.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }}
+{{ with .Param "linkedin" }}
+<a href="{{ . }}" target="_blank" class="linkedin" title="LinkedIn link" rel="noopener" aria-label="follow on LinkedIn——Opens in a new window">
+ {{ partial "svg/linkedin.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }}
+{{ with .Param "github" }}
+<a href="{{ . }}" target="_blank" class="github" title="Github link" rel="noopener" aria-label="follow on Github——Opens in a new window">
+ {{ partial "svg/github.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }}
+{{ with .Param "gitlab" }}
+<a href="{{ . }}" target="_blank" class="gitlab" title="Gitlab link" rel="noopener" aria-label="follow on Gitlab——Opens in a new window">
+ {{ partial "svg/gitlab.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }}
+{{ with .Param "medium" }}
+<a href="{{ . }}" target="_blank" class="medium" title="Medium link" rel="noopener" aria-label="follow on Medium——Opens in a new window">
+ {{ partial "svg/medium.svg" (dict "size" $icon_size) }}
+ {{- partial "new-window-icon.html" . -}}
+</a>
+{{ end }} \ No newline at end of file
diff --git a/layouts/partials/summary.html b/layouts/partials/summary.html
new file mode 100644
index 0000000..9f30c0f
--- /dev/null
+++ b/layouts/partials/summary.html
@@ -0,0 +1,13 @@
+<div>
+ <div>
+ <span>{{ humanize .Section }}</span>
+ <h1>
+ <a href="{{ .Permalink }}">
+ {{ .Title }}
+ </a>
+ </h1>
+ <div>
+ {{ .Summary }}
+ </div>
+ </div>
+</div> \ No newline at end of file
diff --git a/layouts/partials/svg/facebook.svg b/layouts/partials/svg/facebook.svg
new file mode 100644
index 0000000..0afb80f
--- /dev/null
+++ b/layouts/partials/svg/facebook.svg
@@ -0,0 +1 @@
+<svg{{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M28.765,50.32h6.744V33.998h4.499l0.596-5.624h-5.095 l0.007-2.816c0-1.466,0.14-2.253,2.244-2.253h2.812V17.68h-4.5c-5.405,0-7.307,2.729-7.307,7.317v3.377h-3.369v5.625h3.369V50.32z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;"/></svg>
diff --git a/layouts/partials/svg/github.svg b/layouts/partials/svg/github.svg
new file mode 100644
index 0000000..a362a60
--- /dev/null
+++ b/layouts/partials/svg/github.svg
@@ -0,0 +1,3 @@
+<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
+ <path d="M256,32C132.3,32,32,134.8,32,261.7c0,101.5,64.2,187.5,153.2,217.9c11.2,2.1,15.3-5,15.3-11.1 c0-5.5-0.2-19.9-0.3-39.1c-62.3,13.9-75.5-30.8-75.5-30.8c-10.2-26.5-24.9-33.6-24.9-33.6c-20.3-14.3,1.5-14,1.5-14 c22.5,1.6,34.3,23.7,34.3,23.7c20,35.1,52.4,25,65.2,19.1c2-14.8,7.8-25,14.2-30.7c-49.7-5.8-102-25.5-102-113.5 c0-25.1,8.7-45.6,23-61.6c-2.3-5.8-10-29.2,2.2-60.8c0,0,18.8-6.2,61.6,23.5c17.9-5.1,37-7.6,56.1-7.7c19,0.1,38.2,2.6,56.1,7.7 c42.8-29.7,61.5-23.5,61.5-23.5c12.2,31.6,4.5,55,2.2,60.8c14.3,16.1,23,36.6,23,61.6c0,88.2-52.4,107.6-102.3,113.3 c8,7.1,15.2,21.1,15.2,42.5c0,30.7-0.3,55.5-0.3,63c0,6.1,4,13.3,15.4,11C415.9,449.1,480,363.1,480,261.7 C480,134.8,379.7,32,256,32z"/>
+</svg>
diff --git a/layouts/partials/svg/gitlab.svg b/layouts/partials/svg/gitlab.svg
new file mode 100644
index 0000000..36a3bed
--- /dev/null
+++ b/layouts/partials/svg/gitlab.svg
@@ -0,0 +1 @@
+<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="M29.782 199.732L256 493.714 8.074 309.699c-6.856-5.142-9.712-13.996-7.141-21.993l28.849-87.974zm75.405-174.806c-3.142-8.854-15.709-8.854-18.851 0L29.782 199.732h131.961L105.187 24.926zm56.556 174.806L256 493.714l94.257-293.982H161.743zm349.324 87.974l-28.849-87.974L256 493.714l247.926-184.015c6.855-5.142 9.711-13.996 7.141-21.993zm-85.404-262.78c-3.142-8.854-15.709-8.854-18.851 0l-56.555 174.806h131.961L425.663 24.926z"></path></svg>
diff --git a/layouts/partials/svg/instagram.svg b/layouts/partials/svg/instagram.svg
new file mode 100644
index 0000000..2fa7d47
--- /dev/null
+++ b/layouts/partials/svg/instagram.svg
@@ -0,0 +1 @@
+<svg{{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M42.271,26.578v-0.006c0.502,0,1.005,0.01,1.508-0.002 c0.646-0.017,1.172-0.57,1.172-1.217c0-0.963,0-1.927,0-2.89c0-0.691-0.547-1.24-1.236-1.241c-0.961,0-1.922-0.001-2.883,0 c-0.688,0.001-1.236,0.552-1.236,1.243c-0.001,0.955-0.004,1.91,0.003,2.865c0.001,0.143,0.028,0.291,0.073,0.426 c0.173,0.508,0.639,0.82,1.209,0.823C41.344,26.579,41.808,26.578,42.271,26.578z M33,27.817c-3.384-0.002-6.135,2.721-6.182,6.089 c-0.049,3.46,2.72,6.201,6.04,6.272c3.454,0.074,6.248-2.686,6.321-6.043C39.254,30.675,36.462,27.815,33,27.817z M21.046,31.116 v0.082c0,4.515-0.001,9.03,0,13.545c0,0.649,0.562,1.208,1.212,1.208c7.16,0.001,14.319,0.001,21.479,0 c0.656,0,1.215-0.557,1.215-1.212c0.001-4.509,0-9.02,0-13.528v-0.094h-2.912c0.411,1.313,0.537,2.651,0.376,4.014 c-0.161,1.363-0.601,2.631-1.316,3.803s-1.644,2.145-2.779,2.918c-2.944,2.006-6.821,2.182-9.946,0.428 c-1.579-0.885-2.819-2.12-3.685-3.713c-1.289-2.373-1.495-4.865-0.739-7.451C22.983,31.116,22.021,31.116,21.046,31.116z M45.205,49.255c0.159-0.026,0.318-0.049,0.475-0.083c1.246-0.265,2.264-1.304,2.508-2.557c0.025-0.137,0.045-0.273,0.067-0.409 V21.794c-0.021-0.133-0.04-0.268-0.065-0.401c-0.268-1.367-1.396-2.428-2.78-2.618c-0.058-0.007-0.113-0.02-0.17-0.03H20.761 c-0.147,0.027-0.296,0.047-0.441,0.08c-1.352,0.308-2.352,1.396-2.545,2.766c-0.008,0.057-0.02,0.114-0.029,0.171V46.24 c0.028,0.154,0.05,0.311,0.085,0.465c0.299,1.322,1.427,2.347,2.77,2.52c0.064,0.008,0.13,0.021,0.195,0.03H45.205z M33,64 C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/></svg>
diff --git a/layouts/partials/svg/linkedin.svg b/layouts/partials/svg/linkedin.svg
new file mode 100644
index 0000000..3381996
--- /dev/null
+++ b/layouts/partials/svg/linkedin.svg
@@ -0,0 +1,3 @@
+<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 65 65;" version="1.1" viewBox="0 0 65 65" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <path d="M50.837,48.137V36.425c0-6.275-3.35-9.195-7.816-9.195 c-3.604,0-5.219,1.983-6.119,3.374V27.71h-6.79c0.09,1.917,0,20.427,0,20.427h6.79V36.729c0-0.609,0.044-1.219,0.224-1.655 c0.49-1.22,1.607-2.483,3.482-2.483c2.458,0,3.44,1.873,3.44,4.618v10.929H50.837z M22.959,24.922c2.367,0,3.842-1.57,3.842-3.531 c-0.044-2.003-1.475-3.528-3.797-3.528s-3.841,1.524-3.841,3.528c0,1.961,1.474,3.531,3.753,3.531H22.959z M34,64 C17.432,64,4,50.568,4,34C4,17.431,17.432,4,34,4s30,13.431,30,30C64,50.568,50.568,64,34,64z M26.354,48.137V27.71h-6.789v20.427 H26.354z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/>
+</svg>
diff --git a/layouts/partials/svg/medium.svg b/layouts/partials/svg/medium.svg
new file mode 100644
index 0000000..cc5dc23
--- /dev/null
+++ b/layouts/partials/svg/medium.svg
@@ -0,0 +1,3 @@
+<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 170 170;" version="1.1" viewBox="0 0 170 170" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
+<path d="M46.5340803,65.2157554 C46.6968378,63.6076572 46.0836,62.018231 44.8828198,60.93592 L32.6512605,46.2010582 L32.6512605,44 L70.6302521,44 L99.9859944,108.380952 L125.794585,44 L162,44 L162,46.2010582 L151.542017,56.2281011 C150.640424,56.9153477 150.193188,58.0448862 150.380019,59.1628454 L150.380019,132.837155 C150.193188,133.955114 150.640424,135.084652 151.542017,135.771899 L161.755369,145.798942 L161.755369,148 L110.38282,148 L110.38282,145.798942 L120.963119,135.527337 C122.002801,134.487948 122.002801,134.182246 122.002801,132.592593 L122.002801,73.0417402 L92.585901,147.755438 L88.6106443,147.755438 L54.3622782,73.0417402 L54.3622782,123.115814 C54.0767278,125.221069 54.7759199,127.3406 56.2581699,128.863022 L70.0186741,145.55438 L70.0186741,147.755438 L31,147.755438 L31,145.55438 L44.7605042,128.863022 C46.2319621,127.338076 46.8903838,125.204485 46.5340803,123.115814 L46.5340803,65.2157554 Z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/>
+</svg>
diff --git a/layouts/partials/svg/new-window.svg b/layouts/partials/svg/new-window.svg
new file mode 100644
index 0000000..ba148ad
--- /dev/null
+++ b/layouts/partials/svg/new-window.svg
@@ -0,0 +1,3 @@
+<svg {{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 1000 1000;" version="1.1" viewBox="0 0 1000 1000" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" >
+<path d="M598 128h298v298h-86v-152l-418 418-60-60 418-418h-152v-86zM810 810v-298h86v298c0 46-40 86-86 86h-596c-48 0-86-40-86-86v-596c0-46 38-86 86-86h298v86h-298v596h596z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/>
+</svg>
diff --git a/layouts/partials/svg/twitter.svg b/layouts/partials/svg/twitter.svg
new file mode 100644
index 0000000..6803558
--- /dev/null
+++ b/layouts/partials/svg/twitter.svg
@@ -0,0 +1 @@
+<svg{{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M37.167,22.283c-2.619,0.953-4.274,3.411-4.086,6.101 l0.063,1.038l-1.048-0.127c-3.813-0.487-7.145-2.139-9.974-4.915l-1.383-1.377l-0.356,1.017c-0.754,2.267-0.272,4.661,1.299,6.271 c0.838,0.89,0.649,1.017-0.796,0.487c-0.503-0.169-0.943-0.296-0.985-0.233c-0.146,0.149,0.356,2.076,0.754,2.839 c0.545,1.06,1.655,2.097,2.871,2.712l1.027,0.487l-1.215,0.021c-1.173,0-1.215,0.021-1.089,0.467 c0.419,1.377,2.074,2.839,3.918,3.475l1.299,0.444l-1.131,0.678c-1.676,0.976-3.646,1.526-5.616,1.568 C19.775,43.256,19,43.341,19,43.405c0,0.211,2.557,1.397,4.044,1.864c4.463,1.377,9.765,0.783,13.746-1.568 c2.829-1.673,5.657-5,6.978-8.221c0.713-1.716,1.425-4.851,1.425-6.354c0-0.975,0.063-1.102,1.236-2.267 c0.692-0.678,1.341-1.419,1.467-1.631c0.21-0.403,0.188-0.403-0.88-0.043c-1.781,0.636-2.033,0.551-1.152-0.402 c0.649-0.678,1.425-1.907,1.425-2.267c0-0.063-0.314,0.042-0.671,0.233c-0.377,0.212-1.215,0.53-1.844,0.72l-1.131,0.361l-1.027-0.7 c-0.566-0.381-1.361-0.805-1.781-0.932C39.766,21.902,38.131,21.944,37.167,22.283z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4 s30,13.431,30,30S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/></svg>
diff --git a/layouts/partials/svg/youtube.svg b/layouts/partials/svg/youtube.svg
new file mode 100644
index 0000000..9a55379
--- /dev/null
+++ b/layouts/partials/svg/youtube.svg
@@ -0,0 +1 @@
+<svg{{ with .size }} height="{{ . }}" {{ end }} style="enable-background:new 0 0 67 67;" version="1.1" viewBox="0 0 67 67" width="{{ .size }}" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path d="M42.527,41.34c-0.278,0-0.478,0.078-0.6,0.244 c-0.121,0.156-0.18,0.424-0.18,0.796v0.896h1.543V42.38c0-0.372-0.062-0.64-0.185-0.796C42.989,41.418,42.792,41.34,42.527,41.34z M36.509,41.309c0.234,0,0.417,0.076,0.544,0.23c0.123,0.155,0.185,0.383,0.185,0.682v4.584c0,0.286-0.053,0.487-0.153,0.611 c-0.1,0.127-0.256,0.189-0.47,0.189c-0.148,0-0.287-0.033-0.421-0.096c-0.135-0.062-0.274-0.171-0.415-0.313v-5.531 c0.119-0.122,0.239-0.213,0.36-0.271C36.26,41.335,36.383,41.309,36.509,41.309z M41.748,44.658v1.672 c0,0.468,0.057,0.792,0.17,0.974c0.118,0.181,0.313,0.269,0.592,0.269c0.289,0,0.491-0.076,0.606-0.229 c0.114-0.153,0.175-0.489,0.175-1.013v-0.405h1.795v0.456c0,0.911-0.217,1.596-0.657,2.059c-0.435,0.459-1.089,0.687-1.958,0.687 c-0.781,0-1.398-0.242-1.847-0.731c-0.448-0.486-0.676-1.157-0.676-2.014v-3.986c0-0.768,0.249-1.398,0.742-1.882 c0.493-0.484,1.128-0.727,1.911-0.727c0.799,0,1.413,0.225,1.843,0.674c0.429,0.448,0.642,1.093,0.642,1.935v2.264H41.748z M38.623,48.495c-0.271,0.336-0.669,0.501-1.187,0.501c-0.343,0-0.646-0.062-0.912-0.192c-0.267-0.129-0.519-0.327-0.746-0.601 v0.681h-1.764V36.852h1.764v3.875c0.237-0.27,0.485-0.478,0.748-0.616c0.267-0.143,0.534-0.212,0.805-0.212 c0.554,0,0.975,0.189,1.265,0.565c0.294,0.379,0.438,0.933,0.438,1.66v4.926C39.034,47.678,38.897,48.159,38.623,48.495z M30.958,48.884v-0.976c-0.325,0.361-0.658,0.636-1.009,0.822c-0.349,0.191-0.686,0.282-1.014,0.282 c-0.405,0-0.705-0.129-0.913-0.396c-0.201-0.266-0.305-0.658-0.305-1.189v-7.422h1.744v6.809c0,0.211,0.037,0.362,0.107,0.457 c0.077,0.095,0.196,0.141,0.358,0.141c0.128,0,0.292-0.062,0.488-0.188c0.197-0.125,0.375-0.283,0.542-0.475v-6.744h1.744v8.878 H30.958z M24.916,38.6v10.284h-1.968V38.6h-2.034v-1.748h6.036V38.6H24.916z M32.994,32.978c0-0.001,12.08,0.018,13.514,1.45 c1.439,1.435,1.455,8.514,1.455,8.555c0,0-0.012,7.117-1.455,8.556C45.074,52.969,32.994,53,32.994,53s-12.079-0.031-13.516-1.462 c-1.438-1.435-1.441-8.502-1.441-8.556c0-0.041,0.004-7.12,1.441-8.555C20.916,32.996,32.994,32.977,32.994,32.978z M42.52,29.255 h-1.966v-1.08c-0.358,0.397-0.736,0.703-1.13,0.909c-0.392,0.208-0.771,0.312-1.14,0.312c-0.458,0-0.797-0.146-1.027-0.437 c-0.229-0.291-0.345-0.727-0.345-1.311v-8.172h1.962v7.497c0,0.231,0.045,0.399,0.127,0.502c0.08,0.104,0.216,0.156,0.399,0.156 c0.143,0,0.327-0.069,0.548-0.206c0.22-0.137,0.423-0.312,0.605-0.527v-7.422h1.966V29.255z M31.847,27.588 c0.139,0.147,0.339,0.219,0.6,0.219c0.266,0,0.476-0.075,0.634-0.223c0.157-0.152,0.235-0.358,0.235-0.618v-5.327 c0-0.214-0.08-0.387-0.241-0.519c-0.16-0.131-0.37-0.196-0.628-0.196c-0.241,0-0.435,0.065-0.586,0.196 c-0.148,0.132-0.225,0.305-0.225,0.519v5.327C31.636,27.233,31.708,27.439,31.847,27.588z M30.408,19.903 c0.528-0.449,1.241-0.674,2.132-0.674c0.812,0,1.48,0.237,2.001,0.711c0.517,0.473,0.777,1.083,0.777,1.828v5.051 c0,0.836-0.255,1.491-0.762,1.968c-0.513,0.476-1.212,0.714-2.106,0.714c-0.858,0-1.547-0.246-2.064-0.736 c-0.513-0.492-0.772-1.152-0.772-1.983v-5.068C29.613,20.954,29.877,20.351,30.408,19.903z M24.262,16h-2.229l2.634,8.003v5.252 h2.213v-5.5L29.454,16h-2.25l-1.366,5.298h-0.139L24.262,16z M33,64C16.432,64,3,50.569,3,34S16.432,4,33,4s30,13.431,30,30 S49.568,64,33,64z" style="fill-rule:evenodd;clip-rule:evenodd;fill:{{ .fill }};"/></svg>
diff --git a/layouts/partials/tags.html b/layouts/partials/tags.html
new file mode 100644
index 0000000..d675e58
--- /dev/null
+++ b/layouts/partials/tags.html
@@ -0,0 +1,9 @@
+<ul>
+ {{ range .Params.tags }}
+ <li>
+ <a href="{{ "/tags/" | relLangURL }}{{ . | urlize }}">
+ {{- . -}}
+ </a>
+ </li>
+ {{ end }}
+</ul> \ No newline at end of file
diff --git a/layouts/post/list.html b/layouts/post/list.html
new file mode 100644
index 0000000..f41c6bd
--- /dev/null
+++ b/layouts/post/list.html
@@ -0,0 +1,23 @@
+{{ define "main" }}
+{{/*
+This template is the same as the default and is here to demonstrate that if you have a content directory called "post"
+you can create a layouts directory, just for that section.
+*/}}
+<article>
+ <section>
+ {{ .Content }}
+ </section>
+ <aside>
+ {{ range .Paginator.Pages }}
+ <div>
+ {{/*
+ Note we can use `.Render` here for items just in this section, instead of a partial to pull in items for the list
+ page. https://gohugo.io/functions/render/
+ */}}
+ {{ .Render "summary" }}
+ </div>
+ {{ end }}
+ </aside>
+ {{ template "_internal/pagination.html" . }}
+</article>
+{{ end }} \ No newline at end of file
diff --git a/layouts/post/summary.html b/layouts/post/summary.html
new file mode 100644
index 0000000..bbde4a7
--- /dev/null
+++ b/layouts/post/summary.html
@@ -0,0 +1,15 @@
+<div>
+ {{ if .Date }}
+ <div>
+ {{ .Date.Format "January 2, 2006" }}
+ </div>
+ {{ end }}
+ <h1>
+ <a href="{{ .Permalink }}">
+ {{ .Title }}
+ </a>
+ </h1>
+ <div>
+ {{ .Summary }}
+ </div>
+</div> \ No newline at end of file
diff --git a/layouts/robots.txt b/layouts/robots.txt
new file mode 100644
index 0000000..55af02b
--- /dev/null
+++ b/layouts/robots.txt
@@ -0,0 +1,7 @@
+User-agent: *
+# robotstxt.org - if ENV production variable is false robots will be disallowed.
+{{ if eq (getenv "HUGO_ENV") "production" | or (eq .Site.Params.env "production") }}
+Disallow:
+{{ else }}
+Disallow: /
+{{ end }}