jekyll-theme-satellite 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +21 -0
  3. data/_config.yml +82 -0
  4. data/_includes/loading.html +6 -0
  5. data/_includes/navigation.html +84 -0
  6. data/_includes/pagination.html +71 -0
  7. data/_includes/post.html +65 -0
  8. data/_includes/search.html +21 -0
  9. data/_includes/sidebar.html +83 -0
  10. data/_layouts/default.html +113 -0
  11. data/_sass/darkmode.scss +211 -0
  12. data/_sass/layout.scss +57 -0
  13. data/_sass/navigation.scss +178 -0
  14. data/_sass/pagination.scss +253 -0
  15. data/_sass/post.scss +640 -0
  16. data/_sass/search.scss +248 -0
  17. data/_sass/sidebar.scss +309 -0
  18. data/_sass/toc.scss +52 -0
  19. data/_sass/vars.scss +15 -0
  20. data/assets/css/highlight-dark.min.css +1 -0
  21. data/assets/css/highlight-default.min.css +1 -0
  22. data/assets/css/style.scss +89 -0
  23. data/assets/fonts/Lato-Regular.ttf +0 -0
  24. data/assets/fonts/NunitoSans-Regular.ttf +0 -0
  25. data/assets/fonts/Righteous-Regular.ttf +0 -0
  26. data/assets/img/La-Mancha.jpg +0 -0
  27. data/assets/img/example.jpg +0 -0
  28. data/assets/img/favicon.webp +0 -0
  29. data/assets/img/icon/book-solid.svg +1 -0
  30. data/assets/img/icon/calendar-days-regular.svg +1 -0
  31. data/assets/img/icon/clipboard-regular.svg +1 -0
  32. data/assets/img/icon/folder-open-regular.svg +1 -0
  33. data/assets/img/icon/tags-solid.svg +1 -0
  34. data/assets/img/loading.webp +0 -0
  35. data/assets/img/profile.jpg +0 -0
  36. data/assets/img/sorry.png +0 -0
  37. data/assets/img/thumbnail/book.jpg +0 -0
  38. data/assets/img/thumbnail/bricks.webp +0 -0
  39. data/assets/img/thumbnail/empty.jpg +0 -0
  40. data/assets/img/thumbnail/nightgardenflower.jpg +0 -0
  41. data/assets/img/thumbnail/sample.png +0 -0
  42. data/assets/img/tile.png +0 -0
  43. data/assets/js/404.js +22 -0
  44. data/assets/js/highlight.min.js +1213 -0
  45. data/assets/js/main.js +709 -0
  46. data/assets/js/stars.js +700 -0
  47. data/assets/js/sweet-scroll.min.js +2 -0
  48. data/assets/js/tocbot.min.js +1 -0
  49. metadata +104 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 04ee424c66214fc5325ace025a1205d3bba00ef334240e2cd3b046414f8824a4
4
+ data.tar.gz: 1d044b48a78e81a1aec1bac6f27ed8751b26636f04ae44aeaa449715754a5407
5
+ SHA512:
6
+ metadata.gz: 37cb13d4ea2f2870250ed1532c08e815c48eabb98ffffa540203b44359fcf3f8d50f1a845fd61368c855ac8b6acb783e1788283b0130db912c8e15fc23bc2aaf
7
+ data.tar.gz: cd038d7ac09e27f1279345c23b8acc884b12de0469ad35a275f92fc2565ff36176a05547644bf4778bfca7efa79b14a5ca0f10c79ab40953777cfb428dab5075
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Yankos
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/_config.yml ADDED
@@ -0,0 +1,82 @@
1
+ # Welcome to Jekyll!
2
+ #
3
+ # This config file is meant for settings that affect your whole blog, values
4
+ # which you are expected to set up once and rarely edit after that. If you find
5
+ # yourself editing this file very often, consider using Jekyll's data files
6
+ # feature for the data you need to update frequently.
7
+ #
8
+ # For technical reasons, this file is *NOT* reloaded automatically when you use
9
+ # 'bundle exec jekyll serve'. If you change this file, please restart the server process.
10
+ #
11
+ # If you need help with YAML syntax, here are some quick references for you:
12
+ # https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
13
+ # https://learnxinyminutes.com/docs/yaml/
14
+ #
15
+ # Site settings
16
+ # These are used to personalize your new site. If you look in the HTML files,
17
+ # you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
18
+ # You can create any custom variable you would like, and they will be accessible
19
+ # in the templates via {{ site.myvariable }}.
20
+
21
+ title: Example.com
22
+ username: username
23
+ email: example@gmail.com
24
+ github_username: github
25
+ twitter_username: twitter
26
+ instagram_username: instagram
27
+ linkedin_username: linkedin
28
+ facebook_username: facebook
29
+ description: "Satellite - jekyll blog theme"
30
+ baseurl: "" # the subpath of your site, e.g. /blog
31
+ url: "localhost:4000" # the base hostname & protocol for your site, e.g. http://example.com
32
+ repo_url: "https://github.com/byanko55/jekyll-theme-satellite"
33
+ goatcounter_code:
34
+ google_analytics:
35
+
36
+ # Build settings
37
+ plugins:
38
+ - jekyll-feed
39
+ - jekyll-sitemap
40
+ - jekyll-seo-tag
41
+
42
+ exclude:
43
+ - guide/
44
+
45
+ collections:
46
+ pages:
47
+ output: true
48
+ permalink: /:path.html
49
+
50
+ defaults:
51
+ -
52
+ scope:
53
+ path: ""
54
+ type: "pages"
55
+ values:
56
+ layout: "default"
57
+ date: "1900-01-01"
58
+
59
+ # Markdown newline activator
60
+ kramdown:
61
+ input: GFM
62
+ hard_wrap: true
63
+
64
+ # Exclude from processing.
65
+ # The following items will not be processed, by default.
66
+ # Any item listed under the `exclude:` key here will be automatically added to
67
+ # the internal "default list".
68
+ #
69
+ # Excluded items can be processed by explicitly listing the directories or
70
+ # their entries' file path in the `include:` list.
71
+ #
72
+ # exclude:
73
+ # - .sass-cache/
74
+ # - .jekyll-cache/
75
+ # - gemfiles/
76
+ # - Gemfile
77
+ # - Gemfile.lock
78
+ # - node_modules/
79
+ # - vendor/bundle/
80
+ # - vendor/cache/
81
+ # - vendor/gems/
82
+ # - vendor/ruby/
@@ -0,0 +1,6 @@
1
+ <div id="loading">
2
+ <div class="loading_box">
3
+ <img src="{{ '/assets/img/loading.webp' }}">
4
+ <p>Now Loading ...</p>
5
+ </div>
6
+ </div>
@@ -0,0 +1,84 @@
1
+ <nav id="navigation">
2
+ {%- assign nav_pages = site.pages
3
+ | where_exp: "item", "item.title != nil"
4
+ | where_exp: "item", "item.bookmark == true"
5
+ | sort: 'title' -%}
6
+
7
+ {% assign first_level_pages = "" | split, "" %}
8
+ {% assign second_level_pages = "" | split, "" %}
9
+ {% assign third_level_pages = "" | split, "" %}
10
+
11
+ {% for p in nav_pages %}
12
+ {%- assign p_tree = p.url | remove_first: "/" | split: "/" -%}
13
+ {%- assign p_level = p_tree | size -%}
14
+
15
+ {% if p_level <= 2 and p.bookmark %}
16
+ {% assign first_level_pages = first_level_pages | push:p %}
17
+ {% elsif (p_level == 3 and p.bookmark) or (p_level == 2 and p.bookmark == nil) %}
18
+ {% assign second_level_pages = second_level_pages | push:p %}
19
+ {% elsif (p_level == 4 and p.bookmark) or (p_level == 3 and p.bookmark == nil) %}
20
+ {% assign third_level_pages = third_level_pages | push:p %}
21
+ {% endif %}
22
+ {% endfor %}
23
+
24
+ <ul class="nav-list">
25
+ {%- for node in first_level_pages -%}
26
+ {%- assign node_url = node.url | remove: 'index.html' -%}
27
+ {%- assign children_list = second_level_pages
28
+ | where_exp: "item", "item.url contains node_url"
29
+ | sort: 'title' -%}
30
+ {%- assign num_children = children_list | size -%}
31
+ <li id="nav-first" aria-label="{{ node.title }}">
32
+ <div class="nav-item">
33
+ <a href="{{ node_url }}" class="nav-list-link nav-lh">
34
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M181.3 32.4c17.4 2.9 29.2 19.4 26.3 36.8L197.8 128h95.1l11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3s29.2 19.4 26.3 36.8L357.8 128H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H347.1L325.8 320H384c17.7 0 32 14.3 32 32s-14.3 32-32 32H315.1l-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8l9.8-58.7H155.1l-11.5 69.3c-2.9 17.4-19.4 29.2-36.8 26.3s-29.2-19.4-26.3-36.8L90.2 384H32c-17.7 0-32-14.3-32-32s14.3-32 32-32h68.9l21.3-128H64c-17.7 0-32-14.3-32-32s14.3-32 32-32h68.9l11.5-69.3c2.9-17.4 19.4-29.2 36.8-26.3zM187.1 192L165.8 320h95.1l21.3-128H187.1z"/></svg>
35
+ <span>{{ node.title }}</span>
36
+ </a>
37
+ {%- if num_children > 0 and node_url != "/" -%}
38
+ <button class="nav-list-expander" aria-label="toggle items in {{ node.title }} category" aria-pressed="false">
39
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M201.4 342.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 274.7 86.6 137.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"/></svg>
40
+ </button>
41
+ {%- endif -%}
42
+ </div>
43
+ {%- if num_children > 0 and node_url != "/" -%}
44
+ <ul class="nav-list">
45
+ {%- for child in children_list -%}
46
+ {%- assign child_url = child.url | remove: 'index.html' -%}
47
+ {%- assign grand_children_list = third_level_pages
48
+ | where_exp: "item", "item.url contains child_url"
49
+ | sort: 'title' -%}
50
+ {%- assign num_grand_children = grand_children_list | size -%}
51
+ <li id="nav-second" aria-label="{{ child.title }}">
52
+ <div class="nav-item">
53
+ <a href="{{ child_url }}" class="nav-list-link nav-sh">
54
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"/></svg>
55
+ <span>{{ child.title }}</span>
56
+ </a>
57
+ {%- if num_grand_children > 0 -%}
58
+ <button class="nav-list-expander" aria-label="toggle items in {{ child.title }} category" aria-pressed="false">
59
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M201.4 342.6c12.5 12.5 32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L224 274.7 86.6 137.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l160 160z"/></svg>
60
+ </button>
61
+ {%- endif -%}
62
+ </div>
63
+ {%- if num_grand_children > 0 -%}
64
+ <ul class="nav-list">
65
+ {%- for grand_child in grand_children_list -%}
66
+ <li id="nav-third" aria-label="{{ grand_child.title }}">
67
+ <div class="nav-item">
68
+ <a href="{{ grand_child.url | relative_url }}" class="nav-list-link nav-sh">
69
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M432 256c0 17.7-14.3 32-32 32L48 288c-17.7 0-32-14.3-32-32s14.3-32 32-32l352 0c17.7 0 32 14.3 32 32z"/></svg>
70
+ <span>{{ grand_child.title }}</span>
71
+ </a>
72
+ </div>
73
+ </li>
74
+ {%- endfor -%}
75
+ </ul>
76
+ {%- endif -%}
77
+ </li>
78
+ {%- endfor -%}
79
+ </ul>
80
+ {%- endif -%}
81
+ </li>
82
+ {%- endfor -%}
83
+ </ul>
84
+ </nav>
@@ -0,0 +1,71 @@
1
+ {%- assign list_pages = site.pages | sort:"date" | reverse -%}
2
+ {%- assign post_counts = 0 -%}
3
+
4
+ <p class="category-header">
5
+ {% if page_level == 1 %}
6
+ All Posts
7
+ {% else %}
8
+ {{ page.title }}
9
+ {% endif %}
10
+ </p>
11
+ <div id="category-list">
12
+ <ul class="paginated-list" data-current-page="1" aria-live="polite">
13
+ {%- for sub_page in list_pages -%}
14
+ {%- assign page_url = page.url | remove: 'index.html' -%}
15
+ {% if sub_page.url contains page_url %}
16
+ {% unless sub_page.url contains "index.html" %}
17
+ {%- assign post_counts = post_counts | plus:1 -%}
18
+ <li class="paginated-item">
19
+ <div id="article_content">
20
+ <div class="thumbnail_zone">
21
+ {% if sub_page.thumbnail != nil %}
22
+ <a href="{{ sub_page.url }}" class="thumbnail_post" loading="lazy" aria-label="thumbnail_post" style="background-image:url('{{ sub_page.thumbnail }}') !important"></a>
23
+ {% else %}
24
+ <a href="{{ sub_page.url }}" class="thumbnail_post empty" loading="lazy" aria-label="thumbnail_post" style="background-image:url('/assets/img/thumbnail/empty.jpg') !important"></a>
25
+ {% endif %}
26
+ </div>
27
+
28
+ <div class="box_contents">
29
+ <a href="{{ sub_page.url }}" class="title_post">{{ sub_page.title }}</a>
30
+ <a href="{{ sub_page.url }}" class="txt_post">
31
+ {{ sub_page.content | markdownify | strip_html }}
32
+ </a>
33
+ <div class="info-post">
34
+ {%- assign sub_page_tree = sub_page.path | split: "/" -%}
35
+ {% if sub_page_tree.size > 2 %}
36
+ <a href="{{ '/' | append: sub_page_tree[1] }}" class="category">{{ sub_page_tree[1] }}</a>
37
+ {% else %}
38
+ <span class="category">None</span>
39
+ {% endif %}
40
+ {%- assign posting_date = sub_page.date | date: "%Y-%m-%d" -%}
41
+ {% if posting_date != "1900-01-01" %}
42
+ <span class="date">· {{ sub_page.date | date: "%Y-%m-%d" }}</span>
43
+ {% endif %}
44
+ </div>
45
+ </div>
46
+ </div>
47
+ </li>
48
+ {% endunless %}
49
+ {% endif %}
50
+ {%- endfor -%}
51
+ </ul>
52
+ {% if post_counts == 0 %}
53
+ <div class="no-posts">
54
+ <img src="{{ '/assets/img/sorry.png'' }}"></img>
55
+ <h1>Sorry, No posts found</h1>
56
+ </div>
57
+ {% endif %}
58
+ </div>
59
+ <div class="pagination">
60
+ <nav class="pagination-container">
61
+ <button class="pagination-button" id="prev-button" aria-label="Previous page" title="Previous page">
62
+ &lt;
63
+ </button>
64
+
65
+ <div id="pagination-numbers"></div>
66
+
67
+ <button class="pagination-button" id="next-button" aria-label="Next page" title="Next page">
68
+ &gt;
69
+ </button>
70
+ </nav>
71
+ </div>
@@ -0,0 +1,65 @@
1
+ <div class="post-header">
2
+ <div class="thumbnail">
3
+ <div class="transbox">
4
+ {% if page.title %}
5
+ <span class="post-title">{{ page.title }}</span>
6
+ {% endif %}
7
+ <div class="post-info">
8
+ {% if page_level > 2 %}
9
+ <a class="info-box category-box" href="{{ '/' | append: page_tree[0] }}">
10
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M384 480h48c11.4 0 21.9-6 27.6-15.9l112-192c5.8-9.9 5.8-22.1 .1-32.1S555.5 224 544 224H144c-11.4 0-21.9 6-27.6 15.9L48 357.1V96c0-8.8 7.2-16 16-16H181.5c4.2 0 8.3 1.7 11.3 4.7l26.5 26.5c21 21 49.5 32.8 79.2 32.8H416c8.8 0 16 7.2 16 16v32h48V160c0-35.3-28.7-64-64-64H298.5c-17 0-33.3-6.7-45.3-18.7L226.7 50.7c-12-12-28.3-18.7-45.3-18.7H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H87.7 384z"/></svg>
11
+ <span>{{ page_tree[0] }}</span>
12
+ </a>
13
+ {% else %}
14
+ <span class="info-box">
15
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M384 480h48c11.4 0 21.9-6 27.6-15.9l112-192c5.8-9.9 5.8-22.1 .1-32.1S555.5 224 544 224H144c-11.4 0-21.9 6-27.6 15.9L48 357.1V96c0-8.8 7.2-16 16-16H181.5c4.2 0 8.3 1.7 11.3 4.7l26.5 26.5c21 21 49.5 32.8 79.2 32.8H416c8.8 0 16 7.2 16 16v32h48V160c0-35.3-28.7-64-64-64H298.5c-17 0-33.3-6.7-45.3-18.7L226.7 50.7c-12-12-28.3-18.7-45.3-18.7H64C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H87.7 384z"/></svg>
16
+ <span>None</span>
17
+ </span>
18
+ {% endif %}
19
+ <span class="info-box">
20
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192h80v56H48V192zm0 104h80v64H48V296zm128 0h96v64H176V296zm144 0h80v64H320V296zm80-48H320V192h80v56zm0 160v40c0 8.8-7.2 16-16 16H320V408h80zm-128 0v56H176V408h96zm-144 0v56H64c-8.8 0-16-7.2-16-16V408h80zM272 248H176V192h96v56z"/></svg>
21
+ <span>
22
+ {%- assign posting_date = page.date | date: "%Y-%m-%d" -%}
23
+ {% if posting_date == "1900-01-01" %}
24
+ -
25
+ {% else %}
26
+ {{ posting_date }}
27
+ {% endif %}
28
+ </span>
29
+ </span>
30
+ {% if site.goatcounter_code != nil %}
31
+ <span class="info-box">
32
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M288 32c-80.8 0-145.5 36.8-192.6 80.6C48.6 156 17.3 208 2.5 243.7c-3.3 7.9-3.3 16.7 0 24.6C17.3 304 48.6 356 95.4 399.4C142.5 443.2 207.2 480 288 480s145.5-36.8 192.6-80.6c46.8-43.5 78.1-95.4 93-131.1c3.3-7.9 3.3-16.7 0-24.6c-14.9-35.7-46.2-87.7-93-131.1C433.5 68.8 368.8 32 288 32zM144 256a144 144 0 1 1 288 0 144 144 0 1 1 -288 0zm144-64c0 35.3-28.7 64-64 64c-7.1 0-13.9-1.2-20.3-3.3c-5.5-1.8-11.9 1.6-11.7 7.4c.3 6.9 1.3 13.8 3.2 20.7c13.7 51.2 66.4 81.6 117.6 67.9s81.6-66.4 67.9-117.6c-11.1-41.5-47.8-69.4-88.6-71.1c-5.8-.2-9.2 6.1-7.4 11.7c2.1 6.4 3.3 13.2 3.3 20.3z"/></svg>
33
+ <span id="page-hits" usercode="{{ site.goatcounter_code }}">-</span>
34
+ </span>
35
+ {% endif %}
36
+ <a class="info-box" href="#giscus" data-scroll>
37
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M512 240c0 114.9-114.6 208-256 208c-37.1 0-72.3-6.4-104.1-17.9c-11.9 8.7-31.3 20.6-54.3 30.6C73.6 471.1 44.7 480 16 480c-6.5 0-12.3-3.9-14.8-9.9c-2.5-6-1.1-12.8 3.4-17.4l0 0 0 0 0 0 0 0 .3-.3c.3-.3 .7-.7 1.3-1.4c1.1-1.2 2.8-3.1 4.9-5.7c4.1-5 9.6-12.4 15.2-21.6c10-16.6 19.5-38.4 21.4-62.9C17.7 326.8 0 285.1 0 240C0 125.1 114.6 32 256 32s256 93.1 256 208z"/></svg>
38
+ <span id="num-comments">-</span>
39
+ </a>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ </div>
44
+ <div class="tags">
45
+ {%- for page_tag in page.tags -%}
46
+ <span class="tag-box theme-{{ forloop.index0 | modulo: 3 }}" contentID="{{ page_tag }}">
47
+ {{ page_tag }}
48
+ </span>
49
+ {%- endfor -%}
50
+ </div>
51
+ <main>
52
+ {{ content }}
53
+ <!-- see https://giscus.app/ -->
54
+ <div class="giscus" id="giscus" style="margin: 4rem auto;"></div>
55
+ <div id="related-box">
56
+ <span>
57
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M278.5 215.6L23 471c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l74.8-74.8c7.4 4.6 15.3 8.2 23.8 10.5C200.3 452.8 270 454.5 338 409.4c12.2-8.1 5.8-25.4-8.8-25.4l-16.1 0c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l97.7-29.3c3.4-1 6.4-3.1 8.4-6.1c4.4-6.4 8.6-12.9 12.6-19.6c6.2-10.3-1.5-23-13.5-23l-38.6 0c-5.1 0-9.2-4.1-9.2-9.2c0-4.1 2.7-7.6 6.5-8.8l80.9-24.3c4.6-1.4 8.4-4.8 10.2-9.3C494.5 163 507.8 86.1 511.9 36.8c.8-9.9-3-19.6-10-26.6s-16.7-10.8-26.6-10C391.5 7 228.5 40.5 137.4 131.6C57.3 211.7 56.7 302.3 71.3 356.4c2.1 7.9 12 9.6 17.8 3.8L253.6 195.8c6.2-6.2 16.4-6.2 22.6 0c5.4 5.4 6.1 13.6 2.2 19.8z"/></svg>
58
+ You May Also Like
59
+ </span>
60
+ <ul id="related-posts"></ul>
61
+ </div>
62
+ </main>
63
+ <div class="top-arrow">
64
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" href="#" data-scroll><path d="M214.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 141.2V448c0 17.7 14.3 32 32 32s32-14.3 32-32V141.2L329.4 246.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z"/></svg>
65
+ </div>
@@ -0,0 +1,21 @@
1
+ <div id="search">
2
+ <div class="wave"></div>
3
+ <div class="wave"></div>
4
+ <div class="wave"></div>
5
+
6
+ <div class="search-box">
7
+ <h1>Touch background to close</h1>
8
+ <div class="input-box">
9
+ <input id="search-input"
10
+ type="search"
11
+ tabindex="1"
12
+ spellcheck="false"
13
+ placeholder="Search..."
14
+ />
15
+ <button id="btn-clear">
16
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M342.6 150.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L192 210.7 86.6 105.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3L146.7 256 41.4 361.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L192 301.3 297.4 406.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L237.3 256 342.6 150.6z"/></svg>
17
+ </button>
18
+ </div>
19
+ <ul id="search-result"></ul>
20
+ </div>
21
+ </div>
@@ -0,0 +1,83 @@
1
+ <div class="sidebar sidebar-left">
2
+ <div class="side-banner">
3
+ <h1 class="site-name">
4
+ <a href="/"><span class="highlight">example.com</span></a>
5
+ <button id="btn-brightness" aria-label="brightness-button">
6
+ <svg class='ico-dark' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M223.5 32C100 32 0 132.3 0 256S100 480 223.5 480c60.6 0 115.5-24.2 155.8-63.4c5-4.9 6.3-12.5 3.1-18.7s-10.1-9.7-17-8.5c-9.8 1.7-19.8 2.6-30.1 2.6c-96.9 0-175.5-78.8-175.5-176c0-65.8 36-123.1 89.3-153.3c6.1-3.5 9.2-10.5 7.7-17.3s-7.3-11.9-14.3-12.5c-6.3-.5-12.6-.8-19-.8z"/></svg>
7
+ <svg class='ico-light' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M361.5 1.2c5 2.1 8.6 6.6 9.6 11.9L391 121l107.9 19.8c5.3 1 9.8 4.6 11.9 9.6s1.5 10.7-1.6 15.2L446.9 256l62.3 90.3c3.1 4.5 3.7 10.2 1.6 15.2s-6.6 8.6-11.9 9.6L391 391 371.1 498.9c-1 5.3-4.6 9.8-9.6 11.9s-10.7 1.5-15.2-1.6L256 446.9l-90.3 62.3c-4.5 3.1-10.2 3.7-15.2 1.6s-8.6-6.6-9.6-11.9L121 391 13.1 371.1c-5.3-1-9.8-4.6-11.9-9.6s-1.5-10.7 1.6-15.2L65.1 256 2.8 165.7c-3.1-4.5-3.7-10.2-1.6-15.2s6.6-8.6 11.9-9.6L121 121 140.9 13.1c1-5.3 4.6-9.8 9.6-11.9s10.7-1.5 15.2 1.6L256 65.1 346.3 2.8c4.5-3.1 10.2-3.7 15.2-1.6zM160 256a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zm224 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z"/></svg>
8
+ </button>
9
+ <button id="btn-search" aria-label="search-button">
10
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"/></svg>
11
+ </button>
12
+ <button id="btn-nav" aria-pressed="false" aria-label="menu-button">
13
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M0 96C0 78.3 14.3 64 32 64H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 128 0 113.7 0 96zM0 256c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 416c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/></svg>
14
+ </button>
15
+ </h1>
16
+ <a href="/" class="site-avatar" aria-label="site-avatar">
17
+ <img src="{{ '/assets/img/profile.jpg' }}" loading="lazy" alt="homepage" aria-label="homepage-button">
18
+ </a>
19
+ </div>
20
+ <div class="side-info">
21
+ {% include navigation.html %}
22
+ <div id="contact">
23
+ <hr>
24
+ <h3>Contact</h3>
25
+ <ul class="contact-list">
26
+ {% if site.github_username %}
27
+ <li><a aria-label="My Github" href="https://github.com/{{ site.github_username }}">
28
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3 .3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5 .3-6.2 2.3zm44.2-1.7c-2.9 .7-4.9 2.6-4.6 4.9 .3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3 .7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3 .3 2.9 2.3 3.9 1.6 1 3.6 .7 4.3-.7 .7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3 .7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3 .7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"/></svg>
29
+ </a></li>
30
+ {% endif %}
31
+ {% if site.email %}
32
+ <li><a aria-label="My Email" href="{{ site.email }}">
33
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M48 64C21.5 64 0 85.5 0 112c0 15.1 7.1 29.3 19.2 38.4L236.8 313.6c11.4 8.5 27 8.5 38.4 0L492.8 150.4c12.1-9.1 19.2-23.3 19.2-38.4c0-26.5-21.5-48-48-48H48zM0 176V384c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V176L294.4 339.2c-22.8 17.1-54 17.1-76.8 0L0 176z"/></svg>
34
+ </a></li>
35
+ {% endif %}
36
+ {% if site.twitter_username %}
37
+ <li><a aria-label="My Twitter" href="https://twitter.com/{{ site.twitter_username }}">
38
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M459.4 151.7c.3 4.5 .3 9.1 .3 13.6 0 138.7-105.6 298.6-298.6 298.6-59.5 0-114.7-17.2-161.1-47.1 8.4 1 16.6 1.3 25.3 1.3 49.1 0 94.2-16.6 130.3-44.8-46.1-1-84.8-31.2-98.1-72.8 6.5 1 13 1.6 19.8 1.6 9.4 0 18.8-1.3 27.6-3.6-48.1-9.7-84.1-52-84.1-103v-1.3c14 7.8 30.2 12.7 47.4 13.3-28.3-18.8-46.8-51-46.8-87.4 0-19.5 5.2-37.4 14.3-53 51.7 63.7 129.3 105.3 216.4 109.8-1.6-7.8-2.6-15.9-2.6-24 0-57.8 46.8-104.9 104.9-104.9 30.2 0 57.5 12.7 76.7 33.1 23.7-4.5 46.5-13.3 66.6-25.3-7.8 24.4-24.4 44.8-46.1 57.8 21.1-2.3 41.6-8.1 60.4-16.2-14.3 20.8-32.2 39.3-52.6 54.3z"/></svg>
39
+ </a></li>
40
+ {% endif %}
41
+ {% if site.instagram_username %}
42
+ <li><a aria-label="My Instagram" href="https://www.instagram.com/{{ site.instagram_username }}">
43
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1s-34.4 58-36.2 93.9c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8 0-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z"/></svg>
44
+ </a></li>
45
+ {% endif %}
46
+ {% if site.facebook_username %}
47
+ <li><a aria-label="My Facebook" href="https://www.facebook.com/{{ site.facebook_username }}">
48
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M512 256C512 114.6 397.4 0 256 0S0 114.6 0 256C0 376 82.7 476.8 194.2 504.5V334.2H141.4V256h52.8V222.3c0-87.1 39.4-127.5 125-127.5c16.2 0 44.2 3.2 55.7 6.4V172c-6-.6-16.5-1-29.6-1c-42 0-58.2 15.9-58.2 57.2V256h83.6l-14.4 78.2H287V510.1C413.8 494.8 512 386.9 512 256h0z"/></svg>
49
+ </a></li>
50
+ {% endif %}
51
+ {% if site.linkedin_username %}
52
+ <li><a aria-label="My LinkedIn" href="https://www.linkedin.com/in/{{ site.linkedin_username }}">
53
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9V416z"/></svg>
54
+ </a></li>
55
+ {% endif %}
56
+ </ul>
57
+ <hr>
58
+ <span>
59
+ Copyright © 2024 | <a href="https://github.com/byanko55/jekyll-theme-satellite">Yankos</a>
60
+ </span>
61
+ </div>
62
+ </div>
63
+ </div>
64
+ <div class="sidebar sidebar-right">
65
+ <div class="tools">
66
+ <button id="btn-brightness" aria-label="brightness-button">
67
+ <svg class='ico-dark' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M223.5 32C100 32 0 132.3 0 256S100 480 223.5 480c60.6 0 115.5-24.2 155.8-63.4c5-4.9 6.3-12.5 3.1-18.7s-10.1-9.7-17-8.5c-9.8 1.7-19.8 2.6-30.1 2.6c-96.9 0-175.5-78.8-175.5-176c0-65.8 36-123.1 89.3-153.3c6.1-3.5 9.2-10.5 7.7-17.3s-7.3-11.9-14.3-12.5c-6.3-.5-12.6-.8-19-.8z"/></svg>
68
+ <svg class='ico-light' xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M361.5 1.2c5 2.1 8.6 6.6 9.6 11.9L391 121l107.9 19.8c5.3 1 9.8 4.6 11.9 9.6s1.5 10.7-1.6 15.2L446.9 256l62.3 90.3c3.1 4.5 3.7 10.2 1.6 15.2s-6.6 8.6-11.9 9.6L391 391 371.1 498.9c-1 5.3-4.6 9.8-9.6 11.9s-10.7 1.5-15.2-1.6L256 446.9l-90.3 62.3c-4.5 3.1-10.2 3.7-15.2 1.6s-8.6-6.6-9.6-11.9L121 391 13.1 371.1c-5.3-1-9.8-4.6-11.9-9.6s-1.5-10.7 1.6-15.2L65.1 256 2.8 165.7c-3.1-4.5-3.7-10.2-1.6-15.2s6.6-8.6 11.9-9.6L121 121 140.9 13.1c1-5.3 4.6-9.8 9.6-11.9s10.7-1.5 15.2 1.6L256 65.1 346.3 2.8c4.5-3.1 10.2-3.7 15.2-1.6zM160 256a96 96 0 1 1 192 0 96 96 0 1 1 -192 0zm224 0a128 128 0 1 0 -256 0 128 128 0 1 0 256 0z"/></svg>
69
+ </button>
70
+ <button id="btn-search" aria-label="search-button">
71
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M416 208c0 45.9-14.9 88.3-40 122.7L502.6 457.4c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L330.7 376c-34.4 25.2-76.8 40-122.7 40C93.1 416 0 322.9 0 208S93.1 0 208 0S416 93.1 416 208zM208 352a144 144 0 1 0 0-288 144 144 0 1 0 0 288z"/></svg>
72
+ </button>
73
+ </div>
74
+ {%- if page_type == "post" -%}
75
+ <div class="toc">
76
+ <span class="toc-header">
77
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M0 48V487.7C0 501.1 10.9 512 24.3 512c5 0 9.9-1.5 14-4.4L192 400 345.7 507.6c4.1 2.9 9 4.4 14 4.4c13.4 0 24.3-10.9 24.3-24.3V48c0-26.5-21.5-48-48-48H48C21.5 0 0 21.5 0 48z"/></svg>
78
+ Contents
79
+ </span>
80
+ <div class='toc-board'></div>
81
+ </div>
82
+ {%- endif -%}
83
+ </div>
@@ -0,0 +1,113 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1">
7
+ {% seo %}
8
+ <link rel="shortcut icon" type="image/png" href="{{ '/assets/img/favicon.webp' }}">
9
+ <link rel="preload" href="{{ '/assets/img/favicon.webp' }}" as="image">
10
+ {% if site.goatcounter_code %}
11
+ <script data-goatcounter="https://{{ site.goatcounter_code }}.goatcounter.com/count"
12
+ async src="//gc.zgo.at/count.js"></script>
13
+ {% endif %}
14
+
15
+ <title>
16
+ {% if page.title %}{{ page.title }}
17
+ {% else %}{{ site.title }}
18
+ {% endif %}
19
+ </title>
20
+
21
+ <meta
22
+ name="description"
23
+ content="{% if page.description %}{{ page.description | strip_html | strip_newlines | truncate: 160 }}{% else %}{{ site.description }}{% endif %}">
24
+
25
+ <link rel="stylesheet" href="{{ '/assets/css/style.css' }}">
26
+ {% if page.thumbnail %}
27
+ <style>
28
+ .thumbnail {
29
+ background-image: url("{{ page.thumbnail }}");
30
+ }
31
+ </style>
32
+ {% else %}
33
+ <style>
34
+ .thumbnail {
35
+ aspect-ratio: auto !important;
36
+ }
37
+ .transbox {
38
+ transform: none;
39
+ position: relative;
40
+ margin: auto;
41
+ left: 0;
42
+ top: 0;
43
+ }
44
+ </style>
45
+ {% endif %}
46
+ <script src="{{ '/assets/js/tocbot.min.js' }}"></script>
47
+ <script src="{{ '/assets/js/sweet-scroll.min.js' }}"></script>
48
+ </head>
49
+ <body>
50
+ <canvas id="stars" width="100%" height="100%"></canvas>
51
+ {%- assign page_tree = page.path | remove_first: "_pages/" | split: "/" -%}
52
+ {%- assign page_level = page_tree.size -%}
53
+ {% if page_tree.last == "index.md" %}
54
+ {%- assign page_type = "category" -%}
55
+ {% else %}
56
+ {%- assign page_type = "post" -%}
57
+ {% endif %}
58
+ {% include sidebar.html %}
59
+ <div id="post">
60
+ <div class="inner-header">
61
+ <span class="dot" style="background-color: #F86158;"></span>
62
+ <span class="dot" style="background-color: #FBBF2D;"></span>
63
+ <span class="dot" style="background-color: #2ACB45;"></span>
64
+ </div>
65
+ <div class="inner-content">
66
+ <div class="category-tree">
67
+ {%- assign page_link = "/" -%}
68
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><path d="M575.8 255.5c0 18-15 32.1-32 32.1h-32l.7 160.2c0 2.7-.2 5.4-.5 8.1V472c0 22.1-17.9 40-40 40H456c-1.1 0-2.2 0-3.3-.1c-1.4 .1-2.8 .1-4.2 .1H416 392c-22.1 0-40-17.9-40-40V448 384c0-17.7-14.3-32-32-32H256c-17.7 0-32 14.3-32 32v64 24c0 22.1-17.9 40-40 40H160 128.1c-1.5 0-3-.1-4.5-.2c-1.2 .1-2.4 .2-3.6 .2H104c-22.1 0-40-17.9-40-40V360c0-.9 0-1.9 .1-2.8V287.6H32c-18 0-32-14-32-32.1c0-9 3-17 10-24L266.4 8c7-7 15-8 22-8s15 2 21 7L564.8 231.5c8 7 12 15 11 24z"/></svg>
69
+ <p>
70
+ {%- assign search_tree = page.path | remove: "/index.md" | split: "/" -%}
71
+ {%- for sub_tree in search_tree -%}
72
+ {% if forloop.first %}
73
+ <a href="/">Home</a>
74
+ >
75
+ {% elsif forloop.last %}
76
+ {% if page_type == "category" %}
77
+ {{ sub_tree }}
78
+ {% else %}
79
+ {{ page.title }}
80
+ {% endif %}
81
+ {% else %}
82
+ {%- assign page_link = page_link | append: sub_tree | append: "/" -%}
83
+ <a href="{{ page_link }}">{{ sub_tree }}</a>
84
+ >
85
+ {% endif %}
86
+ {%- endfor -%}
87
+ </p>
88
+ </div>
89
+ {% if page_type == "category" %}
90
+ {% include loading.html %}
91
+ {% include pagination.html %}
92
+ {% else %}
93
+ {% include post.html %}
94
+ {% endif %}
95
+ </div>
96
+ </div>
97
+ {% include search.html %}
98
+ </body>
99
+ <script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
100
+ <script src="{{ '/assets/js/highlight.min.js' }}"></script>
101
+ <link id="highlight-default" rel="stylesheet" href="{{ '/assets/css/highlight-default.min.css' }}">
102
+ <link id="highlight-dark" rel="stylesheet" href="{{ '/assets/css/highlight-dark.min.css' }}">
103
+ <script src="{{ '/assets/js/stars.js' }}"></script>
104
+ <script src="{{ '/assets/js/main.js' }}"></script>
105
+ <script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
106
+ <script>
107
+ window.dataLayer = window.dataLayer || [];
108
+ function gtag(){ dataLayer.push(arguments); }
109
+
110
+ gtag('js', new Date());
111
+ gtag('config', '{{ site.google_analytics }}');
112
+ </script>
113
+ </html>