jekyll-theme-tallneck 0.1.1 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +43 -34
- data/_includes/footer.html +10 -23
- data/_includes/head.html +40 -11
- data/_includes/header.html +13 -11
- data/_includes/post-card.html +18 -0
- data/_includes/post-preview.html +15 -0
- data/_layouts/404.html +12 -2
- data/_layouts/about.html +109 -0
- data/_layouts/base.html +8 -7
- data/_layouts/feed.html +12 -5
- data/_layouts/home.html +20 -6
- data/_layouts/post.html +15 -18
- data/_sass/custom_layout.scss +1 -0
- data/_sass/custom_variables.scss +1 -0
- data/_sass/dark_code.scss +195 -0
- data/_sass/light_code.scss +205 -0
- data/_sass/tallneck/base.scss +160 -0
- data/_sass/tallneck/components/about.scss +69 -0
- data/_sass/tallneck/components/post-card.scss +87 -0
- data/_sass/tallneck/components/post-preview.scss +51 -0
- data/_sass/tallneck/components/post.scss +55 -0
- data/_sass/tallneck/components.scss +1 -0
- data/_sass/tallneck/font.scss +39 -0
- data/_sass/tallneck/footer.scss +57 -0
- data/_sass/tallneck/header.scss +90 -0
- data/_sass/tallneck/layout.scss +51 -0
- data/_sass/tallneck/variables.scss +82 -0
- data/_sass/tallneck.scss +10 -0
- data/assets/css/code.scss +6 -0
- data/assets/css/print.css +16 -0
- data/assets/css/style.scss +6 -0
- data/assets/font/opensans/opensans-bold.ttf +0 -0
- data/assets/font/opensans/opensans-bold.woff +0 -0
- data/assets/font/opensans/opensans-bold.woff2 +0 -0
- data/assets/font/opensans/opensans-italic.ttf +0 -0
- data/assets/font/opensans/opensans-italic.woff +0 -0
- data/assets/font/opensans/opensans-italic.woff2 +0 -0
- data/assets/font/opensans/opensans.ttf +0 -0
- data/assets/font/opensans/opensans.woff +0 -0
- data/assets/font/opensans/opensans.woff2 +0 -0
- data/assets/icon/discord.svg +5 -0
- data/assets/icon/github.svg +5 -0
- data/assets/icon/gitlab.svg +5 -0
- data/assets/icon/instagram.svg +5 -0
- data/assets/icon/linkedin.svg +5 -0
- data/assets/icon/mail.svg +5 -0
- data/assets/icon/reddit.svg +5 -0
- data/assets/icon/telegram.svg +5 -0
- data/assets/icon/threads.svg +5 -0
- data/assets/icon/x.svg +5 -0
- data/assets/image/about.webp +0 -0
- data/assets/image/default.webp +0 -0
- data/assets/image/favicon.ico +0 -0
- data/assets/image/favicon.svg +13 -0
- data/assets/image/logo.svg +4 -0
- data/assets/image/pwa_icon.svg +13 -0
- data/assets/image/pwa_icon_x512.png +0 -0
- data/assets/image/pwa_icon_x96.png +0 -0
- data/assets/sitemanifest.json +28 -0
- metadata +72 -38
- data/_includes/article-preview.html +0 -20
- data/_layouts/400.html +0 -7
- data/_layouts/500.html +0 -6
- data/_layouts/page.html +0 -11
- data/assets/css/style.css +0 -356
- data/assets/font/roboto.eot +0 -0
- data/assets/font/roboto.svg +0 -367
- data/assets/images/banner.png +0 -0
- /data/{LICENSE.txt → LICENSE} +0 -0
- /data/assets/font/{roboto.ttf → roboto/roboto.ttf} +0 -0
- /data/assets/font/{roboto.woff → roboto/roboto.woff} +0 -0
- /data/assets/font/{roboto.woff2 → roboto/roboto.woff2} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eb47d01ff8e5bf45a120f6617bb95c9de644b58fc3970c75120b9c511c17fc17
|
4
|
+
data.tar.gz: a98286e504e2b6bfbfd661e286f2189f949afad060bf2e46a15048290e2b97a7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ccee59c6bb3b672440eb1a8fe5da0ec4787e0c3858416a2a018773d3410df3e25591d994c74443189de1b5b7ba3d93c0ed4a866375c32f820f3e640ca6100c4f
|
7
|
+
data.tar.gz: 9e8cb1ba3f0b432e2a10e325009867f2d276e71c82f3df0b6231f9f5bd128caf28d6b94394fc6991c3f63eccd44a96ce1a999a20147af09bde6dea72ab3c1cef
|
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
# Tallneck
|
2
2
|
|
3
|
-
Tallneck is a
|
3
|
+
Tallneck is a Jekyll theme for blogs. It is a simple and clean theme with a focus on the responsiveness. Also js free.
|
4
|
+
|
5
|
+
Preview: [https://jekyll-theme-tallneck.pages.dev/](https://jekyll-theme-tallneck.pages.dev/)
|
4
6
|
|
5
7
|
## Installation
|
6
8
|
|
@@ -18,46 +20,52 @@ theme: jekyll-theme-tallneck
|
|
18
20
|
|
19
21
|
And then execute:
|
20
22
|
|
21
|
-
|
23
|
+
```bash
|
24
|
+
bundle
|
25
|
+
```
|
22
26
|
|
23
27
|
Or install it yourself as:
|
24
28
|
|
25
|
-
|
26
|
-
|
29
|
+
```bash
|
30
|
+
gem install jekyll-theme-tallneck
|
31
|
+
```
|
27
32
|
|
28
33
|
## Usage
|
29
34
|
|
30
|
-
###
|
35
|
+
### Initial setup
|
31
36
|
|
32
|
-
|
33
|
-
Then create a folder named `images` inside the `assets` folder and put a replacement for the default banner image named `banner.png` (1200x630) inside it.
|
37
|
+
To set up your Jekyll site with the Tallneck theme, follow these steps:
|
34
38
|
|
35
|
-
|
39
|
+
1. Install the theme as described above.
|
40
|
+
2. Add the following to your site's `_config.yml` to activate the theme:
|
36
41
|
|
37
|
-
|
38
|
-
|
39
|
-
-
|
40
|
-
-
|
41
|
-
-
|
42
|
-
|
43
|
-
### Main pages
|
42
|
+
```yaml
|
43
|
+
plugins:
|
44
|
+
- jekyll-remote-theme
|
45
|
+
- jekyll-feed
|
46
|
+
- jekyll-seo-tag
|
47
|
+
- jekyll-sitemap
|
44
48
|
|
45
|
-
|
49
|
+
theme: jekyll-theme-tallneck
|
50
|
+
```
|
46
51
|
|
47
|
-
|
48
|
-
-
|
49
|
-
-
|
50
|
-
-
|
51
|
-
-
|
52
|
+
3. Create the following files at the root of your Jekyll site and edit them like the ones in this repo:
|
53
|
+
- [index.md](index.md)
|
54
|
+
- [feed.md](feed.md)
|
55
|
+
- [404.md](404.md)
|
56
|
+
- [about.md](about.md)
|
57
|
+
- [cookie.md](cookie.md)
|
58
|
+
- [privacy.md](privacy.md)
|
59
|
+
- [terms.md](terms.md)
|
52
60
|
|
53
|
-
|
61
|
+
4. Create the `assets/image` folder and put a replacement for the following images:
|
62
|
+
- `favicon.ico` and `favicon.svg` that will be used as the favicon.
|
63
|
+
- `logo.svg` that will be used as the home button.
|
64
|
+
- `pwa_icon.svg`, `pwa_icon_x512.png`, `pwa_icon_x96.png` that will be used as the PWA icon. ([https://maskable.app/editor](https://maskable.app/editor) can be used to create the maskable icon)
|
65
|
+
5. In the `assets` folder, create the sitemanifest.json file and edit it to your liking.
|
66
|
+
6. [Optional] Customize the theme by creating the `_sass` folder and editing `custom_variables.scss` and `custom_styles.scss` files.
|
67
|
+
7. Edit the `_config.yml` file to your liking (you can use the [config](/_config.yml) file in this repo as a template).
|
54
68
|
|
55
|
-
```yaml
|
56
|
-
---
|
57
|
-
layout: 404
|
58
|
-
sitemap: false
|
59
|
-
---
|
60
|
-
```
|
61
69
|
|
62
70
|
### Writing posts
|
63
71
|
|
@@ -65,13 +73,11 @@ To create a new post, add a markdown file in the `_posts` directory and add at t
|
|
65
73
|
|
66
74
|
```yaml
|
67
75
|
---
|
68
|
-
layout: post
|
76
|
+
layout: post # Optional, post is default
|
69
77
|
title: "First post!"
|
70
|
-
subtitle: "Written in Go."
|
78
|
+
subtitle: "Written in Go." # Optional
|
71
79
|
date: 2023-01-16 17:40:28 +0100
|
72
|
-
image:
|
73
|
-
path: /assets/images/golang.jpg
|
74
|
-
alt: golang logo
|
80
|
+
image: /assets/image/golang.jpg # Optional
|
75
81
|
---
|
76
82
|
```
|
77
83
|
|
@@ -82,8 +88,11 @@ To set up your environment to develop this theme, run `bundle install`.
|
|
82
88
|
Your theme is setup just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
|
83
89
|
|
84
90
|
When your theme is released, only the files in `_layouts`, `_includes`, `_sass` and `assets` tracked with Git will be bundled.
|
85
|
-
To add a custom directory to your theme-gem, please edit the regexp in `jotone_theme.gemspec` accordingly.
|
86
91
|
|
87
92
|
## License
|
88
93
|
|
89
94
|
The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
95
|
+
|
96
|
+
## Credits
|
97
|
+
|
98
|
+
Some of the css code was inspired from the [Minima Theme](https://github.com/jekyll/minima). [Minima license](https://github.com/jekyll/minima/blob/master/LICENSE.txt).
|
data/_includes/footer.html
CHANGED
@@ -1,24 +1,11 @@
|
|
1
|
-
<footer class="
|
2
|
-
<hr>
|
3
|
-
<
|
4
|
-
<
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
</li>
|
12
|
-
<li>
|
13
|
-
<a href="{{ '/terms' | relative_url }}" rel="noopener noreferrer">Terms</a>
|
14
|
-
</li>
|
15
|
-
<li>
|
16
|
-
<a href="{{ '/about' | relative_url }}" rel="noopener noreferrer">About</a>
|
17
|
-
</li>
|
18
|
-
<li>
|
19
|
-
<a href="{{ '/contacts' | relative_url }}" rel="noopener noreferrer">Contacts</a>
|
20
|
-
</li>
|
21
|
-
</ul>
|
22
|
-
</nav>
|
23
|
-
</div>
|
1
|
+
<footer class="page-footer">
|
2
|
+
<hr class="footer-hr">
|
3
|
+
<nav class="footer-nav">
|
4
|
+
<a href="{{ '/privacy' | relative_url }}" rel="noopener noreferrer">Privacy</a>
|
5
|
+
<a href="{{ '/cookie' | relative_url }}" rel="noopener noreferrer">Cookie</a>
|
6
|
+
<a href="{{ '/terms' | relative_url }}" rel="noopener noreferrer">Terms</a>
|
7
|
+
</nav>
|
8
|
+
{% if include.text %}
|
9
|
+
<p class="footer-text">{{include.text}}</p>
|
10
|
+
{% endif %}
|
24
11
|
</footer>
|
data/_includes/head.html
CHANGED
@@ -1,16 +1,45 @@
|
|
1
1
|
<head>
|
2
|
-
<meta
|
3
|
-
|
4
|
-
|
5
|
-
<meta
|
6
|
-
<meta
|
2
|
+
<meta charset="UTF-8">
|
3
|
+
|
4
|
+
<!-- Design meta -->
|
5
|
+
<meta content="width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0" name="viewport">
|
6
|
+
<meta content="#f0f0f0" media="(prefers-color-scheme: light)" name="theme-color">
|
7
|
+
<meta content="#252525" media="(prefers-color-scheme: dark)" name="theme-color">
|
8
|
+
<meta content="yes" name="apple-mobile-web-app-capable">
|
9
|
+
<meta content="black-translucent" name="apple-mobile-web-app-status-bar-style">
|
10
|
+
<link rel="manifest" href="/assets/sitemanifest.json">
|
11
|
+
<meta name="theme-color" content="#282828"/>
|
12
|
+
|
13
|
+
{% if page.private %}
|
14
|
+
<meta name="robots" content="noindex, nofollow">
|
15
|
+
{% else %}
|
16
|
+
{% if page.keywords %}
|
17
|
+
<meta name="keywords" content="{{ page.keywords }}">
|
18
|
+
{% else if site.keywords %}
|
19
|
+
<meta name="keywords" content="{{ site.keywords }}">
|
20
|
+
{% endif %}
|
21
|
+
|
22
|
+
{% seo %}
|
23
|
+
{% endif %}
|
24
|
+
|
25
|
+
<!-- Preload -->
|
26
|
+
<link rel="preload" as="font" href="{{ "/assets/font/opensans/opensans.woff2" | relative_url }}" type="font/woff2">
|
27
|
+
<link rel="preload" as="font" href="{{ "/assets/font/opensans/opensans-bold.woff2" | relative_url }}" type="font/woff2">
|
28
|
+
<link rel="preload" as="font" href="{{ "/assets/font/opensans/opensans-italic.woff2" | relative_url }}" type="font/woff2">
|
29
|
+
<link rel="preload" as="style" href="{{ "/assets/css/style.css" | relative_url }}">
|
30
|
+
<!--<link rel="preload" as="style" href="{{ "/assets/css/code.css" | relative_url }}">-->
|
7
31
|
|
8
|
-
|
32
|
+
<!-- CSS stylesheets -->
|
33
|
+
<link rel="stylesheet" href="{{ "/assets/css/style.css" | relative_url }}" blocking="render" fetchpriority="high">
|
34
|
+
<link rel="stylesheet" href="{{ "/assets/css/code.css" | relative_url }}" fetchpriority="low">
|
35
|
+
<link rel="stylesheet" href="{{ "/assets/css/print.css" | relative_url }}" media="print" fetchpriority="low">
|
9
36
|
|
10
|
-
|
11
|
-
|
12
|
-
<link rel="icon" href="{{
|
13
|
-
<link rel="icon" href="{{ "{{ site.favicon | relative_url }}" | relative_url }}" type="image/svg+xml">
|
37
|
+
<!-- Favicon -->
|
38
|
+
<link rel="icon" href="{{ /assets/image/favicon.ico | relative_url }}" sizes="any">
|
39
|
+
<link rel="icon" href="{{ /assets/image/favicon.svg | relative_url }}" type="image/svg+xml">
|
14
40
|
|
15
|
-
|
41
|
+
<!-- Analytics -->
|
42
|
+
{% if site.cloudflare %}
|
43
|
+
<script defer src='https://static.cloudflareinsights.com/beacon.min.js' data-cf-beacon='{"token": "{{ site.cloudflare }}"}'></script>
|
44
|
+
{% endif %}
|
16
45
|
</head>
|
data/_includes/header.html
CHANGED
@@ -1,12 +1,14 @@
|
|
1
|
-
<header class="
|
2
|
-
<
|
3
|
-
<
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
1
|
+
<header class="page-header">
|
2
|
+
<div class="page-header--container">
|
3
|
+
<div class="header-logo">
|
4
|
+
<a aria-label="Home" href="{{ '/' | relative_url }}">
|
5
|
+
<img alt="Website logo" src="{{ '/assets/image/logo.svg' | relative_url }}" loading="eager" width="37px" height="37px">
|
6
|
+
</a>
|
7
|
+
</div>
|
8
|
+
|
9
|
+
<nav class="header-nav">
|
10
|
+
<a href="{{ '/feed' | relative_url }}">Posts</a>
|
11
|
+
<a href="{{ '/about' | relative_url }}">About me</a>
|
12
|
+
</nav>
|
13
|
+
</div>
|
12
14
|
</header>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<article class="post-card" id="{{ include.post.id }}">
|
2
|
+
<a href="{{ include.post.url | relative_url }}" class="post-card--link post-card--flex">
|
3
|
+
<div class="post-card--image">
|
4
|
+
<img src="{{ include.post.image | relative_url }}" alt="{{ include.post.title }}" aria-hidden="true">
|
5
|
+
</div>
|
6
|
+
<div class="post-card--content">
|
7
|
+
<h2 class="post-card--title">{{ include.post.title }}</h2>
|
8
|
+
{% if include.post.subtitle %}
|
9
|
+
<p class="post-card--subtitle">{{ include.post.subtitle }}</p>
|
10
|
+
{% else %}
|
11
|
+
<p class="post-card--subtitle">
|
12
|
+
{{ include.post.excerpt | strip_html | truncatewords: 50 }}
|
13
|
+
</p>
|
14
|
+
{% endif %}
|
15
|
+
<p class="post-card--date">{{ include.post.date | date: "%B %-d, %Y" }}</p>
|
16
|
+
</div>
|
17
|
+
</a>
|
18
|
+
</article>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<article class="post-preview" id="{{ include.post.id }}">
|
2
|
+
<a href="{{ include.post.url | relative_url }}" class="post-preview--link">
|
3
|
+
<div class="post-preview--content">
|
4
|
+
<h2 class="post-preview--title">{{ include.post.title }}</h2>
|
5
|
+
{% if include.post.subtitle %}
|
6
|
+
<p class="post-preview--subtitle">{{ include.post.subtitle }}</p>
|
7
|
+
{% else %}
|
8
|
+
<p class="post-preview--subtitle">
|
9
|
+
{{ include.post.excerpt | strip_html | truncatewords: 50 }}
|
10
|
+
</p>
|
11
|
+
{% endif %}
|
12
|
+
<p class="post-preview--date">{{ include.post.date | date: "%B %-d, %Y" }}</p>
|
13
|
+
</div>
|
14
|
+
</a>
|
15
|
+
</article>
|
data/_layouts/404.html
CHANGED
@@ -1,6 +1,16 @@
|
|
1
1
|
---
|
2
|
-
layout:
|
2
|
+
layout: base
|
3
3
|
title: 404
|
4
4
|
---
|
5
5
|
|
6
|
-
Page not found
|
6
|
+
<h1>Page not found</h1>
|
7
|
+
|
8
|
+
<svg height="512" style="max-width: 100%; height: auto;" viewBox="0 0 512 512" width="512"
|
9
|
+
xmlns="http://www.w3.org/2000/svg">
|
10
|
+
<path
|
11
|
+
d="M321.96677 122.23294h29.647985v148.76007H321.96677zM214.02321 65.440117h29.647985v148.76007H214.02321zM108.04003 281.38394l-9.027921 30.95923L424.58335 407.2819l9.02792-30.95923z"
|
12
|
+
style="fill:var(--svg-fill);stroke-width:.27;"
|
13
|
+
transform="translate(-10.31 19.64)"
|
14
|
+
/>
|
15
|
+
</svg>
|
16
|
+
|
data/_layouts/about.html
ADDED
@@ -0,0 +1,109 @@
|
|
1
|
+
---
|
2
|
+
layout: base
|
3
|
+
---
|
4
|
+
<div class="content-width">
|
5
|
+
{% if page.title %}
|
6
|
+
<h1>{{ page.title }}</h1>
|
7
|
+
{% else %}
|
8
|
+
<h1>About me</h1>
|
9
|
+
{% endif %}
|
10
|
+
|
11
|
+
{% if site.social %}
|
12
|
+
<nav class="about-social no_print">
|
13
|
+
{% if site.github_url %}
|
14
|
+
<a href="{{ site.github_url }}" title="GitHub" target="_blank" rel="noopener">
|
15
|
+
<svg class="about-social--icon">
|
16
|
+
<use href="{{ "/assets/icon/github.svg#github" | relative_url }}" alt="GitHub"></use>
|
17
|
+
</svg>
|
18
|
+
</a>
|
19
|
+
{% endif %}
|
20
|
+
|
21
|
+
{% if site.gitlab_url %}
|
22
|
+
<a href="{{ site.gitlab_url }}" title="GitLab" target="_blank" rel="noopener">
|
23
|
+
<svg class="about-social--icon">
|
24
|
+
<use href="{{ "/assets/icon/gitlab.svg#gitlab" | relative_url }}" alt="GitLab"></use>
|
25
|
+
</svg>
|
26
|
+
</a>
|
27
|
+
{% endif %}
|
28
|
+
|
29
|
+
{% if site.discord_url %}
|
30
|
+
<a href="{{ site.discord_url }}" title="Discord" target="_blank" rel="noopener">
|
31
|
+
<svg class="about-social--icon">
|
32
|
+
<use href="{{ "/assets/icon/discord.svg#discord" | relative_url }}" alt="Discord"></use>
|
33
|
+
</svg>
|
34
|
+
</a>
|
35
|
+
{% endif %}
|
36
|
+
|
37
|
+
{% if site.reddit_url %}
|
38
|
+
<a href="{{ site.reddit_url }}" title="Reddit" target="_blank" rel="noopener">
|
39
|
+
<svg class="about-social--icon">
|
40
|
+
<use href="{{ "/assets/icon/reddit.svg#reddit" | relative_url }}" alt="Reddit"></use>
|
41
|
+
</svg>
|
42
|
+
</a>
|
43
|
+
{% endif %}
|
44
|
+
|
45
|
+
{% if site.instagram_url %}
|
46
|
+
<a href="{{ site.instagram_url }}" title="Instagram" target="_blank" rel="noopener">
|
47
|
+
<svg class="about-social--icon">
|
48
|
+
<use href="{{ "/assets/icon/instagram.svg#instagram" | relative_url }}" alt="Instagram">
|
49
|
+
</use>
|
50
|
+
</svg>
|
51
|
+
</a>
|
52
|
+
{% endif %}
|
53
|
+
|
54
|
+
{% if site.linkedin_url %}
|
55
|
+
<a href="{{ site.linkedin_url }}" title="LinkedIn" target="_blank" rel="noopener">
|
56
|
+
<svg class="about-social--icon">
|
57
|
+
<use href="{{ "/assets/icon/linkedin.svg#linkedin" | relative_url }}" alt="LinkedIn">
|
58
|
+
</use>
|
59
|
+
</svg>
|
60
|
+
</a>
|
61
|
+
{% endif %}
|
62
|
+
|
63
|
+
{% if site.threads_url %}
|
64
|
+
<a href="{{ site.threads_url }}" title="Threads" target="_blank" rel="noopener">
|
65
|
+
<svg class="about-social--icon">
|
66
|
+
<use href="{{ "/assets/icon/threads.svg#threads" | relative_url }}" alt="Threads">
|
67
|
+
</use>
|
68
|
+
</svg>
|
69
|
+
</a>
|
70
|
+
{% endif %}
|
71
|
+
|
72
|
+
{% if site.x_url %}
|
73
|
+
<a href="{{ site.x_url }}" title="X" target="_blank" rel="noopener">
|
74
|
+
<svg class="about-social--icon">
|
75
|
+
<use href="{{ "/assets/icon/x.svg#x" | relative_url }}" alt="X">
|
76
|
+
</use>
|
77
|
+
</svg>
|
78
|
+
</a>
|
79
|
+
{% endif %}
|
80
|
+
|
81
|
+
{% if site.telegram_url %}
|
82
|
+
<a href="{{ site.telegram_url }}" title="Telegram" target="_blank" rel="noopener">
|
83
|
+
<svg class="about-social--icon">
|
84
|
+
<use href="{{ "/assets/icon/telegram.svg#telegram" | relative_url }}" alt="Telegram">
|
85
|
+
</use>
|
86
|
+
</svg>
|
87
|
+
</a>
|
88
|
+
{% endif %}
|
89
|
+
|
90
|
+
{% if site.email %}
|
91
|
+
<a href="mailto:{{ site.email }}" title="Email" target="_blank" rel="noopener">
|
92
|
+
<svg class="about-social--icon">
|
93
|
+
<use href="{{ "/assets/icon/mail.svg#mail" | relative_url }}" alt="Email">
|
94
|
+
</use>
|
95
|
+
</svg>
|
96
|
+
</a>
|
97
|
+
{% endif %}
|
98
|
+
</nav>
|
99
|
+
{% endif %}
|
100
|
+
|
101
|
+
<div class="about">
|
102
|
+
<div class="about--img">
|
103
|
+
<img src="{{ site.about_image | relative_url }}" alt="About me" width="500px" height="500px">
|
104
|
+
</div>
|
105
|
+
<div class="about--content">
|
106
|
+
{{ content }}
|
107
|
+
</div>
|
108
|
+
</div>
|
109
|
+
</div>
|
data/_layouts/base.html
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
<!DOCTYPE html>
|
2
2
|
<html lang="{{ page.language | default: site.language | default: 'en' }}">
|
3
|
-
|
4
|
-
|
5
|
-
|
3
|
+
{% include head.html %}
|
4
|
+
<body>
|
5
|
+
{% include header.html %}
|
6
6
|
|
7
|
-
|
7
|
+
<main class="page-main">
|
8
|
+
{{ content }}
|
9
|
+
</main>
|
8
10
|
|
9
|
-
|
10
|
-
|
11
|
-
|
11
|
+
{% include footer.html text=site.copyright %}
|
12
|
+
</body>
|
12
13
|
</html>
|
data/_layouts/feed.html
CHANGED
@@ -1,9 +1,16 @@
|
|
1
1
|
---
|
2
|
-
layout:
|
2
|
+
layout: base
|
3
3
|
---
|
4
4
|
|
5
|
-
<
|
6
|
-
|
7
|
-
|
8
|
-
|
5
|
+
<h1>{{ page.title }}</h1>
|
6
|
+
|
7
|
+
<div class="content-width">
|
8
|
+
<div class="post-preview-container">
|
9
|
+
{% for post in site.posts %}
|
10
|
+
{% include post-preview.html post=post %}
|
11
|
+
{% if forloop.last == false %}
|
12
|
+
<hr class="post-preview-hr">
|
13
|
+
{% endif %}
|
14
|
+
{% endfor %}
|
15
|
+
</div>
|
9
16
|
</div>
|
data/_layouts/home.html
CHANGED
@@ -1,11 +1,25 @@
|
|
1
1
|
---
|
2
|
-
layout:
|
2
|
+
layout: base
|
3
3
|
---
|
4
4
|
|
5
|
+
<h1>{{ page.title }}</h1>
|
6
|
+
|
7
|
+
<div>
|
5
8
|
{{ content }}
|
9
|
+
</div>
|
10
|
+
|
11
|
+
<div>
|
12
|
+
<h2><a href="{{ '/feed' | relative_url }}" class="hidden-link">Latest Posts</a></h2>
|
13
|
+
<div class="post-card-container">
|
14
|
+
{% for post in site.posts limit: 4 %}
|
15
|
+
{% include post-card.html post=post %}
|
16
|
+
{% endfor %}
|
17
|
+
</div>
|
18
|
+
|
19
|
+
<div style="height: fit-content; align-items: center; text-align: center; margin: 3rem auto 0rem;">
|
20
|
+
<a href="{{ '/feed' | relative_url }}" class="hidden-link hover-underline center">
|
21
|
+
<span>Read all posts →</span>
|
22
|
+
</a>
|
23
|
+
</div>
|
24
|
+
</div>
|
6
25
|
|
7
|
-
<div class="post-preview" style="margin-top: 3rem;">
|
8
|
-
{% for post in site.posts limit: 5 %}
|
9
|
-
{% include article-preview.html author=post.author image=post.image.path alt=post.image.alt title=post.title subtitle=post.subtitle tags=post.tags url=post.url %}
|
10
|
-
{% endfor %}
|
11
|
-
</div>
|
data/_layouts/post.html
CHANGED
@@ -2,26 +2,23 @@
|
|
2
2
|
layout: base
|
3
3
|
---
|
4
4
|
|
5
|
-
<div
|
6
|
-
<
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
5
|
+
<div class="content-width">
|
6
|
+
<div class="post-header">
|
7
|
+
<h1 class="post-header--title">{{ page.title }}</h1>
|
8
|
+
{% if page.no_meta %}
|
9
|
+
{% else %}
|
10
|
+
<p class="post-header--meta">
|
11
|
+
<time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
|
12
|
+
{{ page.date | date: "%-d %B %Y" }}
|
13
|
+
</time>
|
14
|
+
{% if page.keywords %}
|
15
|
+
| <span class="post-header--keywords">{{ page.keywords }}</span>
|
16
|
+
{% endif %}
|
17
|
+
</p>
|
16
18
|
{% endif %}
|
17
|
-
<br>
|
18
|
-
This work is licensed under <a href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.
|
19
|
-
</p>
|
20
|
-
|
21
|
-
<div id="toc">
|
22
|
-
{% toc %}
|
23
19
|
</div>
|
24
|
-
|
20
|
+
|
21
|
+
<div class="post-content">
|
25
22
|
{{ content }}
|
26
23
|
</div>
|
27
24
|
</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
// Copy this file to your _sass folder and add your own customizations to override the default settings
|
@@ -0,0 +1 @@
|
|
1
|
+
// Copy this file to your _sass folder and add your own variables to override the default settings
|