liddlelab-theme 0.0.9 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5f4e9a9e66d6f05b0ea4da35e06a32338f029cbaae73665b479639719a06a83d
4
- data.tar.gz: 2f2e67d113a37ce2839054c0470fd4a30a16e37d39394bda6ec1e3960e4479fd
3
+ metadata.gz: cefbe503a1a10851a241dabdb562075c3539744cb6c51929e9f3f3fa4ad6c138
4
+ data.tar.gz: 3d4f7ff760be7179a73faf5232e726407dc68526228df9c4411066b72e4ae509
5
5
  SHA512:
6
- metadata.gz: 1b9fbd98e5f0a8f2fc882dfa539c9519003a87c1579e8fbe06bc5b561b6556f129fdc3d0bcd1eaed3481d35b4f3125d2c13ae26efc14c4bb07b657b6324d9143
7
- data.tar.gz: 79efc9298f82c1be8b560435ba3dfc9bbe29e4765b3214765622ea6762fd28986f59b2e24e424bb496ab5c59e3d8e304cd5964170be4497122134fc2c1f7bae2
6
+ metadata.gz: '08b9f1873138d16f0c7f6e61323ab6ded876330eb2bc8195714f879fb98739f353ece667a80ead22337f7ca3602d99a11ab48631778f1a8e3e3c61ee327018f8'
7
+ data.tar.gz: 1d6a96be6fe523425f864f19c3ef4170df133e7816359ec66c9421693b923a678fa3dfa0e18267abc9998c005c190c4dbaddb274049f83d8eb8a49a4ee3660a8
@@ -6,8 +6,10 @@
6
6
  <div class="col-12 col-md-12 col-lg-5 pr-lg-0">
7
7
  <div class="h-100">
8
8
  <div class="wrapthumbnail">
9
- <a href="{{ site.baseurl }}{{ post.url }}">
10
- <img class="featured-box-img-cover" src="{% if post.thumb contains "://" %}{{ post.thumb }}{% else %}{{ site.baseurl }}/{{ post.thumb }}{% endif %}">
9
+ <a href="{{ post.url | relative_url }}">
10
+ <img class="featured-box-img-cover" loading="lazy" decoding="async"
11
+ src="{% if post.thumb contains "://" %}{{ post.thumb }}{% else %}{{ site.baseurl }}/{{ post.thumb }}{% endif %}"
12
+ alt="{{ post.title | escape }}">
11
13
  </a>
12
14
  </div>
13
15
  </div>
@@ -17,32 +19,50 @@
17
19
  <div class="card bg-dark">
18
20
  <div class="card-body">
19
21
  <h2 class="card-title">
20
- <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a>
21
- {% if post.rating %}
22
- <div class="mb-2 mt-2 font-weight-normal">
23
- {% include star_rating_postbox.html %}
24
- </div>
25
- {% endif %}
22
+ <a href="{{ post.url | relative_url }}">{{ post.title }}</a>
26
23
  </h2>
24
+ {% if post.rating %}
25
+ <div class="mb-2 mt-2 font-weight-normal">
26
+ {% include star_rating_postbox.html %}
27
+ </div>
28
+ {% endif %}
27
29
 
28
- <h4 class="card-text">{{ post.description }}</h4>
30
+ <p class="card-text">{{ post.description }}</p>
29
31
  </div>
30
32
  <div class="card-footer b-0 bg-dark mt-auto">
31
33
  <div class="wrapfooter">
32
34
  {% if post.author %}
33
35
  <span class="meta-footer-thumb">
34
36
  {% if author.avatar %}
35
- <img class="author-thumb" src="{{site.baseurl}}/{{ author.avatar }}" alt="{{ author.display_name }}">
37
+ <img class="author-thumb" loading="lazy" decoding="async"
38
+ src="{{ author.avatar | relative_url }}" alt="{{ author.display_name | escape }}">
36
39
  {% else %}
37
- <img class="author-thumb" src="https://www.gravatar.com/avatar/{{ author.gravatar }}?s=250&d=mm&r=x" alt="{{ author.display_name }}">
40
+ <img class="author-thumb" loading="lazy" decoding="async"
41
+ src="https://www.gravatar.com/avatar/{{ author.gravatar }}?s=250&d=mm&r=x"
42
+ alt="{{ author.display_name | escape }}">
38
43
  {% endif %}
39
44
  </span>
40
45
  <span class="author-meta">
41
- <span class="post-name"><a target="_blank" href="{{ author.web }}">{{ author.display_name }}</a></span><br/>
42
- {% endif %}
46
+ <span class="post-name">
47
+ {% if author.web and author.web != "" %}
48
+ <a target="_blank" rel="noopener noreferrer" href="{{ author.web }}">{{ author.display_name }}</a>
49
+ {% else %}
50
+ {{ author.display_name }}
51
+ {% endif %}
52
+ </span><br/>
43
53
  <span class="post-date">{{ post.date | date_to_string }}</span>
44
54
  </span>
45
- <span class="post-read-more"><a href="{{ site.baseurl }}/{{ post.url }}" title="Read Story"><svg class="svgIcon-use" width="25" height="25" viewbox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5 0 0 0 .706.03L12.5 16.85l5.662 4.126a.508.508 0 0 0 .708-.03.5.5 0 0 0 .118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55 0 1 .45 1 1v13.637l-5.162-3.668a.49.49 0 0 0-.676 0z" fill-rule="evenodd"></path></svg></a></span>
55
+ {% else %}
56
+ <span class="author-meta">
57
+ <span class="post-date">{{ post.date | date_to_string }}</span>
58
+ </span>
59
+ {% endif %}
60
+ <span class="post-read-more">
61
+ <a href="{{ post.url | relative_url }}" aria-label="Read {{ post.title | escape }}">
62
+ <svg class="svgIcon-use" width="25" height="25" viewbox="0 0 25 25"
63
+ aria-hidden="true" focusable="false"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5 0 0 0 .706.03L12.5 16.85l5.662 4.126a.508.508 0 0 0 .708-.03.5.5 0 0 0 .118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55 0 1 .45 1 1v13.637l-5.162-3.668a.49.49 0 0 0-.676 0z" fill-rule="evenodd"></path></svg>
64
+ </a>
65
+ </span>
46
66
  <div class="clearfix"></div>
47
67
  </div>
48
68
  </div>
@@ -0,0 +1,8 @@
1
+ {% if site.footer_links %}
2
+ <div class="footer-links">
3
+ {% for link in site.footer_links %}
4
+ <a href="{{ link.url | relative_url }}">{{ link.title }}</a>{% unless forloop.last %}
5
+ <span aria-hidden="true">&middot;</span>{% endunless %}
6
+ {% endfor %}
7
+ </div>
8
+ {% endif %}
@@ -1,12 +1,12 @@
1
1
  <nav class="navbar navbar-expand-lg navbar-dark fixed-top" style="border-bottom: 3px solid black;">
2
2
 
3
3
  <a class="navbar-brand" href="{{ site.baseurl }}/index.html">
4
- <h1 class="sitetitle">{{ site.name }} >_</h1>
4
+ <span class="sitetitle">{{ site.name }} &gt;_</span>
5
5
  </a>
6
6
 
7
7
  <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#liddlenavbar"
8
- aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
9
- <span class="navbar-toggler-icon"></span>
8
+ aria-controls="liddlenavbar" aria-expanded="false" aria-label="Toggle navigation">
9
+ <span class="navbar-toggler-icon" aria-hidden="true"></span>
10
10
  </button>
11
11
 
12
12
  <div class="collapse navbar-collapse" id="liddlenavbar">
@@ -20,15 +20,15 @@
20
20
  <li class="nav-item">
21
21
  {% endif %}
22
22
 
23
- <a class="nav-link" href="{{ site.baseurl }}/">Home</a>
23
+ <a class="nav-link" href="{{ site.baseurl }}/"{% if page.url == "/" %} aria-current="page"{% endif %}>Home</a>
24
24
  </li>
25
25
 
26
- {% if page.url == "/blog/" %}
26
+ {% if page.url == "/blog/" or page.url == "/blog" or page.url contains "/blog/page" %}
27
27
  <li class="nav-item active">
28
28
  {% else %}
29
29
  <li class="nav-item">
30
30
  {% endif %}
31
- <a class="nav-link" href="{{ site.baseurl }}/blog">Blog</a>
31
+ <a class="nav-link" href="{{ site.baseurl }}/blog"{% if page.url == "/blog/" or page.url == "/blog" or page.url contains "/blog/page" %} aria-current="page"{% endif %}>Blog</a>
32
32
  </li>
33
33
 
34
34
  {% for pagelink in site.pages %}
@@ -45,7 +45,7 @@
45
45
  {% else %}
46
46
  <li class="nav-item">
47
47
  {% endif %}
48
- <a class="nav-link" href="{{ site.baseurl }}{{ pagelink.url }}">{{ pagelink.title }}</a>
48
+ <a class="nav-link" href="{{ site.baseurl }}{{ pagelink.url }}"{% if page.url == pagelink.url %} aria-current="page"{% endif %}>{{ pagelink.title }}</a>
49
49
  </li>
50
50
  {% endif %}
51
51
 
@@ -4,13 +4,18 @@
4
4
  <div class="col-lg-4 col-md-6 mb-30px card-group">
5
5
  <div class="card h-100 bg-dark">
6
6
  <div class="maxthumb">
7
- <a href="{{ site.baseurl }}{{ post.url }}">
7
+ <a href="{{ post.url | relative_url }}">
8
8
  {% if post.image %}
9
9
 
10
10
  {% if site.lazyimages == "enabled" %}
11
- <img class="img-fluid lazyimg" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAQAAAA3fa6RAAAADklEQVR42mNkAANGCAUAACMAA2w/AMgAAAAASUVORK5CYII=" data-src="{% if post.image contains "://" %}{{ post.image }}{% else %}{{ site.baseurl }}/{{ post.image }}{% endif %}" alt="{{ post.title }}">
11
+ <img class="img-fluid lazyimg" loading="lazy" decoding="async"
12
+ src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAQAAAA3fa6RAAAADklEQVR42mNkAANGCAUAACMAA2w/AMgAAAAASUVORK5CYII="
13
+ data-src="{% if post.image contains "://" %}{{ post.image }}{% else %}{{ site.baseurl }}/{{ post.image }}{% endif %}"
14
+ alt="{{ post.title | escape }}">
12
15
  {% else %}
13
- <img class="img-fluid" src="{% if post.image contains "://" %}{{ post.image }}{% else %}{{ site.baseurl }}/{{ post.image }}{% endif %}" alt="{{ post.title }}">
16
+ <img class="img-fluid" loading="lazy" decoding="async"
17
+ src="{% if post.image contains "://" %}{{ post.image }}{% else %}{{ site.baseurl }}/{{ post.image }}{% endif %}"
18
+ alt="{{ post.title | escape }}">
14
19
  {% endif %}
15
20
 
16
21
  {% endif %}
@@ -18,31 +23,49 @@
18
23
  </div>
19
24
  <div class="card-body">
20
25
  <h2 class="card-title">
21
- <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a>
22
- {% if post.rating %}
23
- <div class="mb-2 mt-2 font-weight-normal">
24
- {% include star_rating_postbox.html %}
25
- </div>
26
- {% endif %}
26
+ <a href="{{ post.url | relative_url }}">{{ post.title }}</a>
27
27
  </h2>
28
- <h4 class="card-text">{{ post.description | strip_html | truncatewords:30 }}</h4>
28
+ {% if post.rating %}
29
+ <div class="mb-2 mt-2 font-weight-normal">
30
+ {% include star_rating_postbox.html %}
31
+ </div>
32
+ {% endif %}
33
+ <p class="card-text">{{ post.description | strip_html | truncatewords:30 }}</p>
29
34
  </div>
30
35
  <div class="card-footer bg-dark">
31
36
  <div class="wrapfooter">
32
37
  {% if post.author %}
33
38
  <span class="meta-footer-thumb">
34
39
  {% if author.avatar %}
35
- <img class="author-thumb" src="{{site.baseurl}}/{{ author.avatar }}" alt="{{ author.display_name }}">
40
+ <img class="author-thumb" loading="lazy" decoding="async"
41
+ src="{{ author.avatar | relative_url }}" alt="{{ author.display_name | escape }}">
36
42
  {% else %}
37
- <img class="author-thumb" src="https://www.gravatar.com/avatar/{{ author.gravatar }}?s=250&d=mm&r=x" alt="{{ author.display_name }}">
43
+ <img class="author-thumb" loading="lazy" decoding="async"
44
+ src="https://www.gravatar.com/avatar/{{ author.gravatar }}?s=250&d=mm&r=x"
45
+ alt="{{ author.display_name | escape }}">
38
46
  {% endif %}
39
47
  </span>
40
48
  <span class="author-meta">
41
- <span class="post-name"><a target="_blank" href="{{ author.web }}">{{ author.display_name }}</a></span><br/>
42
- {% endif %}
49
+ <span class="post-name">
50
+ {% if author.web and author.web != "" %}
51
+ <a target="_blank" rel="noopener noreferrer" href="{{ author.web }}">{{ author.display_name }}</a>
52
+ {% else %}
53
+ {{ author.display_name }}
54
+ {% endif %}
55
+ </span><br/>
43
56
  <span class="post-date">{{ post.date | date_to_string }}</span>
44
57
  </span>
45
- <span class="post-read-more"><a href="{{ site.baseurl }}{{ post.url }}" title="Read Story"><svg class="svgIcon-use" width="25" height="25" viewbox="0 0 25 25"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5 0 0 0 .706.03L12.5 16.85l5.662 4.126a.508.508 0 0 0 .708-.03.5.5 0 0 0 .118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55 0 1 .45 1 1v13.637l-5.162-3.668a.49.49 0 0 0-.676 0z" fill-rule="evenodd"></path></svg></a></span>
58
+ {% else %}
59
+ <span class="author-meta">
60
+ <span class="post-date">{{ post.date | date_to_string }}</span>
61
+ </span>
62
+ {% endif %}
63
+ <span class="post-read-more">
64
+ <a href="{{ post.url | relative_url }}" aria-label="Read {{ post.title | escape }}">
65
+ <svg class="svgIcon-use" width="25" height="25" viewbox="0 0 25 25"
66
+ aria-hidden="true" focusable="false"><path d="M19 6c0-1.1-.9-2-2-2H8c-1.1 0-2 .9-2 2v14.66h.012c.01.103.045.204.12.285a.5.5 0 0 0 .706.03L12.5 16.85l5.662 4.126a.508.508 0 0 0 .708-.03.5.5 0 0 0 .118-.285H19V6zm-6.838 9.97L7 19.636V6c0-.55.45-1 1-1h9c.55 0 1 .45 1 1v13.637l-5.162-3.668a.49.49 0 0 0-.676 0z" fill-rule="evenodd"></path></svg>
67
+ </a>
68
+ </span>
46
69
  <div class="clearfix"></div>
47
70
  </div>
48
71
  </div>
data/_includes/share.html CHANGED
@@ -4,20 +4,26 @@
4
4
  </p>
5
5
  <ul>
6
6
  <li class="ml-1 mr-1">
7
- <a target="_blank" href="https://twitter.com/intent/tweet?text={{ page.title }}&url={{ page.url | absolute_url }}" onclick="window.open(this.href, 'twitter-share', 'width=550,height=235');return false;">
8
- <i class="fab fa-twitter"></i>
7
+ <a target="_blank" rel="noopener noreferrer" aria-label="Share this post on Twitter"
8
+ href="https://twitter.com/intent/tweet?text={{ page.title | url_encode }}&amp;url={{ page.url | absolute_url | url_encode }}"
9
+ onclick="window.open(this.href, 'twitter-share', 'noopener,noreferrer,width=550,height=235');return false;">
10
+ <i class="fab fa-twitter" aria-hidden="true"></i>
9
11
  </a>
10
12
  </li>
11
13
 
12
14
  <li class="ml-1 mr-1">
13
- <a target="_blank" href="https://facebook.com/sharer.php?u={{ page.url | absolute_url }}" onclick="window.open(this.href, 'facebook-share', 'width=550,height=435');return false;">
14
- <i class="fab fa-facebook-f"></i>
15
+ <a target="_blank" rel="noopener noreferrer" aria-label="Share this post on Facebook"
16
+ href="https://facebook.com/sharer.php?u={{ page.url | absolute_url | url_encode }}"
17
+ onclick="window.open(this.href, 'facebook-share', 'noopener,noreferrer,width=550,height=435');return false;">
18
+ <i class="fab fa-facebook-f" aria-hidden="true"></i>
15
19
  </a>
16
20
  </li>
17
21
 
18
22
  <li class="ml-1 mr-1">
19
- <a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url={{ page.url | absolute_url }}" onclick="window.open(this.href, 'width=550,height=435');return false;">
20
- <i class="fab fa-linkedin-in"></i>
23
+ <a target="_blank" rel="noopener noreferrer" aria-label="Share this post on LinkedIn"
24
+ href="https://www.linkedin.com/shareArticle?mini=true&amp;url={{ page.url | absolute_url | url_encode }}"
25
+ onclick="window.open(this.href, 'linkedin-share', 'noopener,noreferrer,width=550,height=435');return false;">
26
+ <i class="fab fa-linkedin-in" aria-hidden="true"></i>
21
27
  </a>
22
28
  </li>
23
29
 
@@ -7,7 +7,7 @@ title: Archive
7
7
  ================================================== -->
8
8
  <section class="recent-posts">
9
9
  <div class="section-title">
10
- <h2>Archive of posts with <span>{{ page.type }} '{{ page.title }}'</span></h2>
10
+ <h1>Archive of posts with <span>{{ page.type }} '{{ page.title }}'</span></h1>
11
11
  </div>
12
12
  <div class="row listrecent">
13
13
 
data/_layouts/blog.html CHANGED
@@ -1,168 +1,40 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
1
+ ---
2
+ layout: default
3
+ ---
3
4
 
4
- <head>
5
- <meta charset="utf-8">
6
- <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
7
-
8
- <link rel="icon" href="/assets/img/logo.png" />
9
- <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"
10
- integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
11
- <link rel="stylesheet" href="/assets/css/main.css" />
12
- <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css"
13
- integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
14
-
15
- {% if jekyll.environment == 'production' %}
16
- <!-- change your GA id in _config.yml -->
17
- <script>
18
- (function (i, s, o, g, r, a, m) {
19
- i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () {
20
- (i[r].q = i[r].q || []).push(arguments)
21
- }, i[r].l = 1 * new Date(); a = s.createElement(o),
22
- m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m)
23
- })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
24
- ga('create', '{{site.google_analytics}}', 'auto');
25
- ga('send', 'pageview');
26
- </script>
27
- {% endif %}
28
- </head>
29
-
30
- {% capture layout %}{% if page.layout %}layout-{{ page.layout }}{% endif %}{% endcapture %}
31
-
32
- <body class="{{layout}}">
33
- <nav class="navbar navbar-expand-lg navbar-dark fixed-top">
34
-
35
- <a class="navbar-brand" href="{{ site.baseurl }}/index.html">
36
- <h1 class="sitetitle">{{ site.name }} >_</h1>
37
- </a>
38
-
39
- <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#liddlenavbar"
40
- aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
41
- <span class="navbar-toggler-icon"></span>
42
- </button>
43
-
44
- <div class="collapse navbar-collapse" id="liddlenavbar">
45
-
46
- <!-- Begin Menu -->
47
-
48
- <ul class="navbar-nav ml-auto">
49
-
50
- {% if page.url == "/" %}
51
- <li class="nav-item active">
52
- {% else %}
53
- <li class="nav-item">
54
- {% endif %}
55
-
56
- <a class="nav-link" href="{{ site.baseurl }}/">Home</a>
57
- </li>
58
-
59
- {% if page.url == "/blog" %}
60
- <li class="nav-item active">
61
- {% else %}
62
- <li class="nav-item">
63
- {% endif %}
64
- <a class="nav-link" href="{{ site.baseurl }}/blog">Blog</a>
65
- </li>
66
-
67
- {% if page.url == "/about" %}
68
- <li class="nav-item active">
69
- {% else %}
70
- <li class="nav-item">
71
- {% endif %}
72
- <a class="nav-link" href="{{ site.baseurl }}/about">About</a>
73
- </li>
74
- </ul>
75
-
76
- <!-- End Menu -->
77
-
78
- </div>
79
- </nav>
80
- <!-- End Navigation
81
- ================================================== -->
82
-
83
- <div class="site-content">
84
-
85
- <div class="container">
86
-
87
- <!-- Content
88
- ================================================== -->
89
- <div class="main-content">
90
- <!-- Featured
5
+ <!-- Featured
91
6
  ================================================== -->
92
7
  <section class="featured-posts">
93
8
  <div class="section-title">
94
9
  <h2><span>Featured</span></h2>
95
10
  </div>
96
11
  <div class="row">
97
-
98
- {% for post in site.posts %}
99
-
100
- {% if post.featured == true %}
101
-
102
- {% include featuredbox.html %}
103
-
104
- {% endif %}
105
-
106
- {% endfor %}
107
-
12
+ {% for post in site.posts %}
13
+ {% if post.featured == true %}
14
+ {% include featuredbox.html %}
15
+ {% endif %}
16
+ {% endfor %}
108
17
  </div>
109
18
  </section>
110
19
 
111
20
  <!-- Posts Index
112
21
  ================================================== -->
113
22
  <section class="recent-posts">
114
-
115
23
  <div class="section-title">
116
-
117
24
  <h2><span>All Stories</span></h2>
118
-
119
25
  </div>
120
-
121
26
  <div class="row listrecent">
122
-
123
27
  {% for post in paginator.posts %}
124
-
125
- {% include postbox.html %}
126
-
28
+ {% include postbox.html %}
127
29
  {% endfor %}
128
-
129
30
  </div>
130
-
131
31
  </section>
132
32
 
133
33
  <!-- Pagination
134
34
  ================================================== -->
135
35
  <div class="bottompagination">
136
- <div class="pointerup"><i class="fa fa-caret-up"></i></div>
137
- <span class="navigation" role="navigation">
138
- {% include pagination.html %}
139
- </span>
36
+ <div class="pointerup"><i class="fa fa-caret-up" aria-hidden="true"></i></div>
37
+ <span class="navigation" role="navigation">
38
+ {% include pagination.html %}
39
+ </span>
140
40
  </div>
141
-
142
- </div>
143
- <!-- Begin Footer
144
- ================================================== -->
145
- <footer class="footer">
146
- <div class="container">
147
- <div class="row">
148
- <div class="col-md-6 col-sm-6 text-center text-lg-left">
149
- Copyright © {{ site.time | date: "%Y" }} {{ site.name }}
150
- </div>
151
- <div class="col-md-6 col-sm-6 text-center text-lg-right">
152
- <a target="_blank" href="https://github.com/mikeliddle/LiddleLabTheme/">LiddleLab Jekyll
153
- Theme</a> by <a target="_blank" href="https://github.com/mikeliddle">mikeliddle</a>
154
- </div>
155
- </div>
156
- </div>
157
- </footer>
158
- <!-- End Footer
159
- ================================================== -->
160
- </div>
161
-
162
- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
163
- <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"
164
- integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k"
165
- crossorigin="anonymous"></script>
166
- </body>
167
-
168
- </html>
@@ -4,6 +4,10 @@ layout: default
4
4
  permalink: "/categories.html"
5
5
  ---
6
6
 
7
+ <div class="section-title">
8
+ <h1><span>{{ page.title }}</span></h1>
9
+ </div>
10
+
7
11
  <div class="row listrecent">
8
12
  {% for category in site.categories %}
9
13
  <div class="section-title col-md-12 mt-4">
@@ -32,6 +32,7 @@
32
32
  {% capture layout %}{% if page.layout %}layout-{{ page.layout }}{% endif %}{% endcapture %}
33
33
 
34
34
  <body class="{{layout}}">
35
+ <a class="skip-link" href="#main-content">Skip to main content</a>
35
36
  {% include navbar.html %}
36
37
  <div class="site-content">
37
38
 
@@ -39,9 +40,9 @@
39
40
 
40
41
  <!-- Content
41
42
  ================================================== -->
42
- <div class="main-content">
43
+ <main id="main-content" class="main-content">
43
44
  {{ content }}
44
- </div>
45
+ </main>
45
46
  <!-- Begin Footer
46
47
  ================================================== -->
47
48
  <footer class="footer">
@@ -51,8 +52,11 @@
51
52
  Copyright © {{ site.time | date: "%Y" }} {{ site.name }}
52
53
  </div>
53
54
  <div class="col-md-6 col-sm-6 text-center text-lg-right">
54
- <a target="_blank" href="https://github.com/mikeliddle/LiddleLabTheme/">LiddleLab Jekyll
55
- Theme</a> by <a target="_blank" href="https://github.com/mikeliddle">mikeliddle</a>
55
+ {% include footer-links.html %}
56
+ <a target="_blank" rel="noopener noreferrer"
57
+ href="https://github.com/mikeliddle/LiddleLabTheme/">LiddleLab Jekyll Theme</a> by
58
+ <a target="_blank" rel="noopener noreferrer"
59
+ href="https://github.com/mikeliddle">mikeliddle</a>
56
60
  </div>
57
61
  </div>
58
62
  </div>
@@ -60,11 +64,12 @@
60
64
  <!-- End Footer
61
65
  ================================================== -->
62
66
  </div>
67
+ </div>
63
68
 
64
- <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
65
- <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"
66
- integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k"
67
- crossorigin="anonymous"></script>
69
+ <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
70
+ <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js"
71
+ integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k"
72
+ crossorigin="anonymous"></script>
68
73
  </body>
69
74
 
70
75
  </html>
data/_layouts/page.html CHANGED
@@ -5,7 +5,7 @@ layout: default
5
5
 
6
6
  <section>
7
7
  <div class="section-title">
8
- <h2><span>{{ page.title }}</span></h2>
8
+ <h1><span>{{ page.title }}</span></h1>
9
9
  </div>
10
10
 
11
11
  <div class="article-post">
data/_layouts/post.html CHANGED
@@ -25,13 +25,24 @@ post_class: post-template
25
25
  <div class="row post-top-meta">
26
26
  <div class="col-xs-12 col-md-3 col-lg-2 text-center text-md-left mb-4 mb-md-0">
27
27
  {% if author.avatar %}
28
- <img class="author-thumb" src="{{site.baseurl}}/{{ author.avatar }}" alt="{{ author.display_name }}">
28
+ <img class="author-thumb" loading="lazy" decoding="async"
29
+ src="{{ author.avatar | relative_url }}" alt="{{ author.display_name | escape }}">
29
30
  {% else %}
30
- <img class="author-thumb" src="https://www.gravatar.com/avatar/{{ author.gravatar }}?s=250&d=mm&r=x" alt="{{ author.display_name }}">
31
+ <img class="author-thumb" loading="lazy" decoding="async"
32
+ src="https://www.gravatar.com/avatar/{{ author.gravatar }}?s=250&d=mm&r=x"
33
+ alt="{{ author.display_name | escape }}">
31
34
  {% endif %}
32
35
  </div>
33
36
  <div class="col-xs-12 col-md-9 col-lg-10 text-center text-md-left">
34
- <a target="_blank" href="{{ author.web }}">{{ author.display_name }}</a><a target="_blank" href="{{ author.twitter }}" class="btn follow">Follow</a>
37
+ {% if author.web and author.web != "" %}
38
+ <a target="_blank" rel="noopener noreferrer" href="{{ author.web }}">{{ author.display_name }}</a>
39
+ {% else %}
40
+ <span>{{ author.display_name }}</span>
41
+ {% endif %}
42
+ {% if author.twitter and author.twitter != "" %}
43
+ <a target="_blank" rel="noopener noreferrer" href="{{ author.twitter }}" class="btn follow"
44
+ aria-label="Follow {{ author.display_name | escape }} on Twitter">Follow</a>
45
+ {% endif %}
35
46
  <span class="author-description">{{ author.description }}</span>
36
47
  </div>
37
48
  </div>
@@ -51,13 +62,9 @@ post_class: post-template
51
62
 
52
63
  <!-- Post Featured Image -->
53
64
  {% if page.image %}
54
-
55
- {% if site.lazyimages == "enabled" %}
56
- <img class="featured-image img-fluid lazyimg" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAACCAQAAAA3fa6RAAAADklEQVR42mNkAANGCAUAACMAA2w/AMgAAAAASUVORK5CYII=" data-src="{% if page.image contains "://" %}{{ page.image }}{% else %}{{ site.baseurl }}/{{ page.image }}{% endif %}" alt="{{ page.title }}">
57
- {% else %}
58
- <img class="featured-image img-fluid" src="{% if page.image contains "://" %}{{ page.image }}{% else %}{{ site.baseurl }}/{{ page.image }}{% endif %}" alt="{{ page.title }}">
59
- {% endif %}
60
-
65
+ <img class="featured-image img-fluid" loading="eager" fetchpriority="high" decoding="async"
66
+ src="{% if page.image contains "://" %}{{ page.image }}{% else %}{{ site.baseurl }}/{{ page.image }}{% endif %}"
67
+ alt="{{ page.title | escape }}">
61
68
  {% endif %}
62
69
  <!-- End Featured Image -->
63
70
 
data/_layouts/tags.html CHANGED
@@ -4,6 +4,10 @@ layout: default
4
4
  permalink: "/tags.html"
5
5
  ---
6
6
 
7
+ <div class="section-title">
8
+ <h1><span>{{ page.title }}</span></h1>
9
+ </div>
10
+
7
11
  <div class="row listrecent">
8
12
  {% for tag in site.tags %}
9
13
  <div class="section-title col-md-12 mt-4">
data/assets/css/main.css CHANGED
@@ -3,12 +3,51 @@ body{
3
3
  color: #d3d3d3;
4
4
  }
5
5
 
6
+ a {
7
+ color: #8ed0ff;
8
+ }
9
+
10
+ a:hover {
11
+ color: #c8eaff;
12
+ text-decoration: underline;
13
+ }
14
+
15
+ a:focus,
16
+ button:focus {
17
+ outline: 3px solid #44ff00;
18
+ outline-offset: 3px;
19
+ }
20
+
21
+ .skip-link {
22
+ position: fixed;
23
+ top: 0.75rem;
24
+ left: 0.75rem;
25
+ z-index: 1100;
26
+ padding: 0.75rem 1rem;
27
+ background: #44ff00;
28
+ color: #011736;
29
+ font-weight: 700;
30
+ text-decoration: none;
31
+ transform: translateY(-200%);
32
+ }
33
+
34
+ .skip-link:focus {
35
+ color: #011736;
36
+ text-decoration: underline;
37
+ transform: translateY(0);
38
+ }
39
+
6
40
  img {
7
41
  max-width: 100%;
42
+ height: auto;
8
43
  }
9
44
 
10
- .navbar-brand h1 {
45
+ .navbar-brand .sitetitle {
11
46
  color: #44ff00;
47
+ display: inline-block;
48
+ font-size: 2rem;
49
+ font-weight: 500;
50
+ line-height: 1.2;
12
51
  }
13
52
 
14
53
  nav {
@@ -41,9 +80,9 @@ section.recent-posts {
41
80
  margin-bottom: 0;
42
81
  }
43
82
 
83
+ .section-title h1,
44
84
  .section-title h2 {
45
85
  border-bottom: 1px solid rgba(255, 255, 255, 0.125);
46
- margin-bottom: 25px;
47
86
  font-weight: 700;
48
87
  font-size: 1.4rem;
49
88
  margin-bottom: 27px;
@@ -96,17 +135,14 @@ span.navigation {
96
135
  }
97
136
 
98
137
  iframe {
99
- max-width: 1
138
+ width: 100%;
139
+ max-width: 100%;
100
140
  }
101
141
 
102
142
  .mainheading {
103
143
  padding: 1rem 0rem;
104
144
  }
105
145
 
106
- .mainheading h1.sitetitle {
107
- font-family: Righteous;
108
- }
109
-
110
146
  .mainheading h1.posttitle {
111
147
  font-weight: 700;
112
148
  margin-bottom: 1rem;
@@ -134,6 +170,10 @@ iframe {
134
170
  fill: rgba(255, 255, 255, .44);
135
171
  }
136
172
 
173
+ .share a:hover {
174
+ color: #c8eaff;
175
+ }
176
+
137
177
  .share p {
138
178
  margin-bottom: 10px;
139
179
  font-size: 0.95rem;
@@ -175,7 +215,11 @@ iframe {
175
215
  }
176
216
 
177
217
  .card-title a {
178
- color: #d3d3d3;
218
+ color: #8ed0ff;
219
+ }
220
+
221
+ .card-title a:hover {
222
+ color: #c8eaff;
179
223
  }
180
224
 
181
225
  .featured-image {
@@ -231,8 +275,8 @@ iframe {
231
275
  line-height: 1.25;
232
276
  }
233
277
 
234
- .listfeaturedtag h4.card-text,
235
- .listrecent h4.card-text {
278
+ .listfeaturedtag p.card-text,
279
+ .listrecent p.card-text {
236
280
  font-size: 0.95rem;
237
281
  line-height: 1.6;
238
282
  font-weight: 400;
@@ -313,14 +357,15 @@ ul.tags li {
313
357
 
314
358
  ul.tags li a {
315
359
  background: rgba(255, 255, 255, 0.05);
316
- color: rgba(255, 255, 255, .6);
360
+ color: #8ed0ff;
317
361
  border-radius: 3px;
318
362
  padding: 5px 10px;
319
363
  }
320
364
 
321
365
  ul.tags li a:hover {
322
366
  background: rgba(255, 255, 255, .07);
323
- text-decoration: none;
367
+ color: #c8eaff;
368
+ text-decoration: underline;
324
369
  }
325
370
 
326
371
  /* Rouge (rb) CSS theme based on VS Code color theme */
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: liddlelab-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Liddle
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-03-29 00:00:00.000000000 Z
11
+ date: 2026-09-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll-seo-tag
@@ -147,6 +147,7 @@ files:
147
147
  - README.md
148
148
  - _includes/adsense-under-header.html
149
149
  - _includes/featuredbox.html
150
+ - _includes/footer-links.html
150
151
  - _includes/giscus.html
151
152
  - _includes/navbar.html
152
153
  - _includes/pagination.html