jekyll-theme-profile 1.6.1 → 1.7.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +23 -133
- data/_includes/header-appbar.html +2 -0
- data/_includes/post-card.html +2 -1
- data/_includes/post-feature-card.html +1 -1
- data/_includes/post-timeline-card.html +2 -0
- data/_includes/post-timeline.html +2 -0
- data/_includes/posts.html +2 -0
- data/_includes/related.html +116 -0
- data/{assets/blog/index.html → _layouts/category_layout.html} +0 -1
- data/_layouts/default.html +2 -3
- data/_layouts/home.html +1 -1
- data/_layouts/landing.html +4 -3
- data/_layouts/linktree.html +1 -2
- data/_layouts/page.html +1 -1
- data/_layouts/paginate.html +2 -2
- data/_layouts/post.html +21 -9
- data/_layouts/tags.html +15 -0
- data/_sass/_main.scss +9 -0
- data/assets/css/theme.scss +0 -1
- metadata +7 -34
- data/_config.yml +0 -161
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 496c50249c4ad24ccfdecbd84442cb3e88db4db88de315f95f1a000c1af32604
|
4
|
+
data.tar.gz: 4ff57f86bdfe0aadca9553c658231a1a9e507ba6a03282a13c6e98ad09532eec
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9949c30dcebcd7d12e59c67d8587ff88567e856993a0b225f0de59f6ac9397bfd78250ba690c0131c25644221f6e25ff698c26a700f8663d32fc8bcf3360c0cd
|
7
|
+
data.tar.gz: c4645f8fea05ca5265884e5b5b8c4d308f3613ccdc8bd9c7aa5688818315849f90b84c30e1e1dc460440fa0b2c1a6f6413dcc0fcbefcaf351a177d19175b0d80
|
data/README.md
CHANGED
@@ -1,16 +1,9 @@
|
|
1
|
-
---
|
2
|
-
layout: post
|
3
|
-
permalink: /
|
4
|
-
image: screenshot.png
|
5
|
-
description: A customizable jekyll theme built off of the github primer css
|
6
|
-
toc: true
|
7
|
-
---
|
8
1
|
# jekyll-theme-profile
|
9
2
|
|
10
|
-
![jekyll-theme-profile](screenshot.png)
|
3
|
+
![jekyll-theme-profile](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/screenshot.png)
|
11
4
|
|
12
5
|
|
13
|
-
|
6
|
+
This theme is based on GitHub's primer style. It supports both light and dark modes, and four style options: appbar, sidebar, topbar, and stacked. Setting up is a breeze, as it automatically populates your profile using your GitHub user info. Add custom links like Linktree and share engaging blog posts effortlessly.
|
14
7
|
|
15
8
|
## Installation
|
16
9
|
|
@@ -36,106 +29,8 @@ Or install it yourself as:
|
|
36
29
|
|
37
30
|
## Usage
|
38
31
|
|
39
|
-
|
32
|
+
Start with a [sample config](https://github.com/athackst/jekyll-theme-profile/blob/main/example/_config.yml) that you can copy and customize.
|
40
33
|
|
41
|
-
```yaml
|
42
|
-
repository: athackst/jekyll-theme-profile
|
43
|
-
# The style of the website
|
44
|
-
style: topbar # One of "stacked", "sidebar", "topbar"
|
45
|
-
# The user/project avatar. If not set the avatar of the project owner will be used.
|
46
|
-
user_image: /media/user-image.jpg
|
47
|
-
# Optional custom background image and overlay
|
48
|
-
# background:
|
49
|
-
# image: /media/background-img.jpg
|
50
|
-
# single overlay for all or custom for light and dark modes
|
51
|
-
# overlay: rgba(0, 0, 0, 0.5)
|
52
|
-
# light:
|
53
|
-
# overlay: rgba(255, 255, 255, 0.5)
|
54
|
-
# dark:
|
55
|
-
# overlay: rgba(0, 0, 0, 0.5)
|
56
|
-
|
57
|
-
# repo_info: true # Show the information for the source of this project
|
58
|
-
# user_metadata: true # Show the metadata associated with the user
|
59
|
-
# profile_link: true # Show a link to the github profile for the user
|
60
|
-
|
61
|
-
####################
|
62
|
-
# Social media
|
63
|
-
# icon_color: "#959da5" # The color of the social media icons on the site
|
64
|
-
# social_media: # Your social media accounts
|
65
|
-
# behance: your_username
|
66
|
-
# dribbble: your_username
|
67
|
-
# docker: your_username
|
68
|
-
# facebook: your_username
|
69
|
-
# github: your_username
|
70
|
-
# hackerrank: your_username
|
71
|
-
# instagram: your_username
|
72
|
-
# keybase: your_username
|
73
|
-
# linkedin: your_username
|
74
|
-
# mail: email@address
|
75
|
-
# mastodon: your_username
|
76
|
-
# medium: your_username
|
77
|
-
# stackoverflow: your_user_id
|
78
|
-
# telegram: your_username
|
79
|
-
# threads: your_username
|
80
|
-
# tiktok: your_username
|
81
|
-
# twitter: your_username
|
82
|
-
# unsplash: your_username
|
83
|
-
# vk: your_username
|
84
|
-
# vscode: your_username
|
85
|
-
# youtube: your_username
|
86
|
-
# x: your_username
|
87
|
-
|
88
|
-
####################
|
89
|
-
# Navigation links
|
90
|
-
# nav:
|
91
|
-
# - name: Topbar
|
92
|
-
# url: /test/home/topbar.html
|
93
|
-
# - name: Appbar
|
94
|
-
# url: /test/home/appbar.html
|
95
|
-
# - name: Sidebar
|
96
|
-
# url: /test/home/sidebar.html
|
97
|
-
# - name: Stacked
|
98
|
-
# url: /test/home/stacked.html
|
99
|
-
|
100
|
-
####################
|
101
|
-
# List of links for home page
|
102
|
-
# links:
|
103
|
-
# - name: Example page with topbar
|
104
|
-
# url: /test/page/topbar
|
105
|
-
# thumbnail: /media/icon-topbar.png
|
106
|
-
# - name: Example page with appbar
|
107
|
-
# url: /test/page/appbar
|
108
|
-
# - name: Example page with sidebar
|
109
|
-
# url: /test/page/sidebar
|
110
|
-
# thumbnail: /media/icon-sidebar.png
|
111
|
-
# - name: Example page with header stacked
|
112
|
-
# url: /test/page/stacked
|
113
|
-
# thumbnail: /media/icon-stacked.png
|
114
|
-
# - name: Example page with a custom background
|
115
|
-
# url: /test/page/background
|
116
|
-
# thumbnail: /media/icon-bg.png
|
117
|
-
|
118
|
-
###################
|
119
|
-
# Repositories to show on home page
|
120
|
-
repositories:
|
121
|
-
sort_by: stars
|
122
|
-
# sort_by options:
|
123
|
-
# - pushed
|
124
|
-
# - stars
|
125
|
-
limit: 24
|
126
|
-
exclude:
|
127
|
-
archived: true
|
128
|
-
forks: true
|
129
|
-
repositories:
|
130
|
-
# - list of respositories to exclude
|
131
|
-
|
132
|
-
####################
|
133
|
-
# Blog
|
134
|
-
posts_limit: 3 # The number of posts to show in home
|
135
|
-
|
136
|
-
paginate: 6 # The number of posts to show per page of pagination of blog posts
|
137
|
-
paginate_path: "/assets/blog/page:num"
|
138
|
-
```
|
139
34
|
|
140
35
|
You can also use this with github acions. Below is a typical worfklow file
|
141
36
|
|
@@ -203,11 +98,6 @@ jobs:
|
|
203
98
|
env:
|
204
99
|
JEKYLL_ENV: production
|
205
100
|
JEKYLL_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
206
|
-
- name: HTMLProofer
|
207
|
-
uses: athackst/htmlproofer-action@v0.3.0
|
208
|
-
with:
|
209
|
-
ignore_urls: |
|
210
|
-
https://opensource.org/license/mit/
|
211
101
|
- name: Upload artifact
|
212
102
|
uses: actions/upload-pages-artifact@v1
|
213
103
|
|
@@ -242,21 +132,21 @@ style: sidebar # One of "stacked", "sidebar", "topbar"
|
|
242
132
|
---
|
243
133
|
```
|
244
134
|
|
245
|
-
#### [Sidebar](/
|
135
|
+
#### [Sidebar](https://www.althack.dev/jekyll-theme-profile/home/sidebar.html)
|
246
136
|
|
247
|
-
![Sidebar image](/media/sidebar-preview.png)
|
137
|
+
![Sidebar image](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/sidebar-preview.png)
|
248
138
|
|
249
|
-
#### [Stacked](/
|
139
|
+
#### [Stacked](https://www.althack.dev/jekyll-theme-profile/home/stacked.html)
|
250
140
|
|
251
|
-
![Stacked image](/media/stacked-preview.png)
|
141
|
+
![Stacked image](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/stacked-preview.png)
|
252
142
|
|
253
|
-
#### [Topbar](/
|
143
|
+
#### [Topbar](https://www.althack.dev/jekyll-theme-profile/home/topbar.html)
|
254
144
|
|
255
|
-
![Topbar image](/media/topbar-preview.png)
|
145
|
+
![Topbar image](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/topbar-preview.png)
|
256
146
|
|
257
|
-
#### [Appbar](/
|
147
|
+
#### [Appbar](https://www.althack.dev/jekyll-theme-profile/home/appbar.html)
|
258
148
|
|
259
|
-
![Appbar image](/media/appbar-preview.png)
|
149
|
+
![Appbar image](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/appbar-preview.png)
|
260
150
|
|
261
151
|
#### Background
|
262
152
|
|
@@ -283,7 +173,7 @@ background:
|
|
283
173
|
overlay: rgba(0, 0, 0, 0.5)
|
284
174
|
```
|
285
175
|
|
286
|
-
[Example page](/
|
176
|
+
[Example page](https://www.althack.dev/jekyll-theme-profile/page/background)
|
287
177
|
|
288
178
|
#### Header
|
289
179
|
|
@@ -300,7 +190,7 @@ header:
|
|
300
190
|
|
301
191
|
In the `nav` section, you can add navigation links that will show up on every page of your website.
|
302
192
|
|
303
|
-
![Nav](/media/nav.png){: .border}
|
193
|
+
![Nav](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/nav.png){: .border}
|
304
194
|
|
305
195
|
```yaml
|
306
196
|
nav:
|
@@ -316,7 +206,7 @@ nav:
|
|
316
206
|
|
317
207
|
In the `links` section, you can add links to showcase various pages on the web or your website.
|
318
208
|
|
319
|
-
![Links](/media/links.png){: .border}
|
209
|
+
![Links](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/links.png){: .border}
|
320
210
|
|
321
211
|
```yaml
|
322
212
|
links:
|
@@ -338,7 +228,7 @@ links:
|
|
338
228
|
|
339
229
|
The `repositories` section allows you to display your GitHub repositories on your page. You can sort them by stars or latest pushes, set a limit to the number of repositories displayed, and exclude archived, forked, or specific repositories from the list
|
340
230
|
|
341
|
-
![Repositories](/media/repositories.png){: .border}
|
231
|
+
![Repositories](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/repositories.png){: .border}
|
342
232
|
|
343
233
|
```yaml
|
344
234
|
repositories:
|
@@ -354,7 +244,7 @@ repositories:
|
|
354
244
|
# - respositories to exclude
|
355
245
|
```
|
356
246
|
|
357
|
-
### Social media
|
247
|
+
### Social media and SEO
|
358
248
|
|
359
249
|
#### Setting the social media card
|
360
250
|
|
@@ -384,7 +274,7 @@ defaults:
|
|
384
274
|
|
385
275
|
Utilize the `social_media` section to add links to your various social media profiles. For each platform simply provide your username or user ID to have the corresponding icon and link appear on your profile.
|
386
276
|
|
387
|
-
![Social Media](/media/social-media.png){: .border}
|
277
|
+
![Social Media](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/social-media.png){: .border}
|
388
278
|
|
389
279
|
```yaml
|
390
280
|
social_media:
|
@@ -418,23 +308,23 @@ You can also set the icon color. If you don't set an icon color, the original i
|
|
418
308
|
icon_color: "#959da5"
|
419
309
|
```
|
420
310
|
|
421
|
-
### Blog
|
311
|
+
### Blog timeline
|
422
312
|
|
423
|
-
Make entries for the blog the same way you normally would by placing entries in the `_posts` folder. You can adjust the number of entries that show up in the main page by adjusting `posts_limit` in the `_config.yml` file. If you have more posts than the limit, a `Read more` button will link to the paginated blog post page /blog/index.html.
|
313
|
+
Make entries for the blog the same way you normally would by placing entries in the `_posts` folder. You can adjust the number of entries that show up in the main page by adjusting `posts_limit` in the `_config.yml` file. If you have paginate installed and more posts than the limit, a `Read more` button will link to the paginated blog post page /blog/index.html.
|
424
314
|
|
425
|
-
![Blog](/media/blog.png){: .border}
|
315
|
+
![Blog](https://raw.githubusercontent.com/athackst/jekyll-theme-profile/main/example/media/blog.png){: .border}
|
426
316
|
|
427
317
|
```yaml
|
428
318
|
posts_limit: 3
|
429
319
|
```
|
430
320
|
|
431
|
-
Additionally, the theme provides a paginate layout you can use.
|
321
|
+
Additionally, the theme provides a paginate layout you can use.
|
432
322
|
|
433
|
-
|
323
|
+
To use, add `gem jekyll-paginate` to your gemfile and the following lines to your `_config.yml`
|
434
324
|
|
435
325
|
```yaml
|
436
326
|
paginate: 6
|
437
|
-
paginate_path: "/
|
327
|
+
paginate_path: "/blog/page:num"
|
438
328
|
```
|
439
329
|
|
440
330
|
And adding a `index.html` page at the `pagenate_path`
|
@@ -10,9 +10,11 @@
|
|
10
10
|
</script>
|
11
11
|
<header class="AppHeader position-sticky top-0 z-2 border-bottom topbar">
|
12
12
|
<div class="AppHeader-item d-flex flex-justify-between p-2 flex-items-center">
|
13
|
+
{%- if site.nav %}
|
13
14
|
<div class="d-flex">
|
14
15
|
<button id="expansion-btn" class="AppHeader-button d-sm-none" type="button">{% octicon three-bars height:16 %}</button>
|
15
16
|
</div>
|
17
|
+
{%- endif %}
|
16
18
|
<div tabindex="-1" class="d-flex flex-1 ml-3" id="github-logo">
|
17
19
|
<a href="{{ site.baseurl }}/" class="AppHeader-link d-flex flex-items-center no-underline mr-3">
|
18
20
|
{% octicon mark-github height:32 %}
|
data/_includes/post-card.html
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
{%- assign image = post.image | default: site.image %}
|
2
|
+
{%- assign border = include.border %}
|
2
3
|
<div class="col-sm-6 col-lg-4 ">
|
3
|
-
<div class="py-4 d-flex flex-column border
|
4
|
+
<div class="py-4 d-flex flex-column {{ border }}">
|
4
5
|
<div class="image-container">
|
5
6
|
<a href="{{ post.url | relative_url }}">
|
6
7
|
<img class="rounded-2" src="{{ image | relative_url }}" width="377" height="200" alt="{{ post.title }}">
|
@@ -1,5 +1,5 @@
|
|
1
1
|
{%- assign image = post.image | default: site.image %}
|
2
|
-
<div class="py-4 d-flex flex-column flex-md-row flex-md-row-reverse p-responsive">
|
2
|
+
<div class="py-4 d-flex flex-column flex-md-row flex-md-row-reverse p-responsive col-12">
|
3
3
|
<div class="col-12 col-lg-8 p-responsive">
|
4
4
|
<div class="image-container">
|
5
5
|
<a href="{{ post.url | relative_url }}">
|
@@ -30,6 +30,7 @@
|
|
30
30
|
</div>
|
31
31
|
{%- endif %}
|
32
32
|
<div class="summary"> {{ post.excerpt }}</div>
|
33
|
+
{%- if post.content != blank %}
|
33
34
|
<div class="more">
|
34
35
|
<a href="{{ post.url | relative_url }}" class="link-mktg arrow-target-mktg text-semibold f4-mktg">
|
35
36
|
Contiue
|
@@ -42,6 +43,7 @@
|
|
42
43
|
</svg>
|
43
44
|
</a>
|
44
45
|
</div>
|
46
|
+
{%- endif %}
|
45
47
|
</div>
|
46
48
|
|
47
49
|
</div>
|
@@ -5,6 +5,8 @@
|
|
5
5
|
{%- include post-timeline-card.html %}
|
6
6
|
{%- endfor %}
|
7
7
|
</div>
|
8
|
+
{%- if site.paginate %}
|
8
9
|
<div class="col-12 col-md-7 offset-md-5 mb-5">
|
9
10
|
<a href="{{ site.paginate_path | relative_url | replace: 'page:num', '' }}" class="btn ml-5">Read more</a>
|
10
11
|
</div>
|
12
|
+
{%- endif %}
|
data/_includes/posts.html
CHANGED
@@ -5,6 +5,8 @@
|
|
5
5
|
{%- include post-card.html %}
|
6
6
|
{%- endfor %}
|
7
7
|
</div>
|
8
|
+
{%- if site.pageinate %}
|
8
9
|
<div class="col-12 col-md-7 offset-md-5 mb-5">
|
9
10
|
<a href="{{ site.paginate_path | relative_url | replace: 'page:num', '' }}" class="btn ml-5">Read more</a>
|
10
11
|
</div>
|
12
|
+
{%- endif %}
|
@@ -0,0 +1,116 @@
|
|
1
|
+
{% comment %}
|
2
|
+
<!--
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Copyright (c) 2021 John Scott.
|
6
|
+
|
7
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
8
|
+
of this software and associated documentation files (the "Software"), to deal
|
9
|
+
in the Software without restriction, including without limitation the rights
|
10
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
11
|
+
copies of the Software, and to permit persons to whom the Software is
|
12
|
+
furnished to do so, subject to the following conditions:
|
13
|
+
|
14
|
+
The above copyright notice and this permission notice shall be included in all
|
15
|
+
copies or substantial portions of the Software.
|
16
|
+
|
17
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
18
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
19
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
20
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
21
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
22
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
23
|
+
SOFTWARE.
|
24
|
+
-->
|
25
|
+
{% endcomment %}
|
26
|
+
|
27
|
+
{% assign related_by = page.related_by | default: site.related_by | default: "default" %}
|
28
|
+
{% if related_by.first != true %}{% assign related_by = related_by | split: " " %}{% endif %}
|
29
|
+
{% assign related_limit = page.related_limit | default: site.related_limit | default: 3 %}
|
30
|
+
{% assign related_from = page.related_from | default: site.related_from | default: documents %}
|
31
|
+
{% assign related_categories = page.related_categories | default: site.related_categories | default: 1 %}
|
32
|
+
{% assign related_tags = page.related_tags | default: site.related_tags | default: 1 %}
|
33
|
+
{% assign related_template = page.related_template | default: site.related_template | default: "post-card.html" %}
|
34
|
+
|
35
|
+
{% comment %}<!-- Random related pages -->{% endcomment %}
|
36
|
+
{% if related_by contains "random" %}
|
37
|
+
{% comment %}<!-- We might sample current page so select one more just in case -->{% endcomment %}
|
38
|
+
{% assign related_limit = related_limit | plus: 1 %}
|
39
|
+
{% if related_from == "posts" %}
|
40
|
+
{% assign related_posts = site.posts | sample: related_limit %}
|
41
|
+
{% else %}
|
42
|
+
{% assign related_posts = site.documents | sample: related_limit %}
|
43
|
+
{% endif %}
|
44
|
+
{% assign related_limit = related_limit | minus: 1 %}
|
45
|
+
|
46
|
+
{% comment %}<!-- Tag/category matching pages -->{% endcomment %}
|
47
|
+
{% elsif related_by contains "categories" or related_by contains "tags" %}
|
48
|
+
{% assign related_posts = "" | split: " " %}
|
49
|
+
|
50
|
+
{% for doc in site.documents %}
|
51
|
+
{% if doc.id == page.id %}
|
52
|
+
{% continue %}
|
53
|
+
{% elsif related_from == "posts" and doc.collection != "posts" %}
|
54
|
+
{% continue %}
|
55
|
+
{% elsif related_from == "collection" and doc.collection != page.collection %}
|
56
|
+
{% continue %}
|
57
|
+
{% endif %}
|
58
|
+
|
59
|
+
{% assign related_category_count = 0 %}
|
60
|
+
{% if related_by contains "categories" %}
|
61
|
+
{% for cat in doc.categories %}
|
62
|
+
{% if page.categories contains cat %}
|
63
|
+
{% assign related_category_count = related_category_count | plus: 1 %}
|
64
|
+
{% endif %}
|
65
|
+
{% endfor %}
|
66
|
+
{% endif %}
|
67
|
+
|
68
|
+
{% assign related_tag_count = 0 %}
|
69
|
+
{% if related_by contains "tags" %}
|
70
|
+
{% for tag in doc.tags %}
|
71
|
+
{% if page.tags contains tag %}
|
72
|
+
{% assign related_tag_count = related_tag_count | plus: 1 %}
|
73
|
+
{% endif %}
|
74
|
+
{% endfor %}
|
75
|
+
{% endif %}
|
76
|
+
|
77
|
+
{% if related_by contains "categories" and related_by contains "tags" %}
|
78
|
+
{% if related_by contains "or" %}
|
79
|
+
{% if related_category_count >= related_categories or related_tag_count >= related_tags %}
|
80
|
+
{% assign related_posts = related_posts | push: doc %}
|
81
|
+
{% endif %}
|
82
|
+
{% else %}
|
83
|
+
{% if related_category_count >= related_categories and related_tag_count >= related_tags %}
|
84
|
+
{% assign related_posts = related_posts | push: doc %}
|
85
|
+
{% endif %}
|
86
|
+
{% endif %}
|
87
|
+
{% elsif related_by contains "categories" and related_category_count >= related_categories %}
|
88
|
+
{% assign related_posts = related_posts | push: doc %}
|
89
|
+
{% elsif related_by contains "tags" and related_tag_count >= related_tags %}
|
90
|
+
{% assign related_posts = related_posts | push: doc %}
|
91
|
+
{% endif %}
|
92
|
+
{% endfor %}
|
93
|
+
|
94
|
+
{% assign related_posts = related_posts | sample: related_limit %}
|
95
|
+
|
96
|
+
{% comment %}<!-- Use site.related_posts for posts if found -->{% endcomment %}
|
97
|
+
{% elsif site.related_posts.size > 0 %}
|
98
|
+
{% assign related_posts = site.related_posts %}
|
99
|
+
|
100
|
+
{% comment %}<!-- Otherwise show recent posts if no site.related_posts -->{% endcomment %}
|
101
|
+
{% else %}
|
102
|
+
{% assign related_posts = site.posts %}
|
103
|
+
{% endif %}
|
104
|
+
|
105
|
+
{%- if related_limit > 0 %}
|
106
|
+
<h2 class="h5-mktg pb-3 mb-lg-3">Related posts</h2>
|
107
|
+
<div class="d-flex flex-wrap gutter-spacious">
|
108
|
+
{% for post in related_posts limit:related_limit %}
|
109
|
+
{% if post.id == page.id %}
|
110
|
+
{% continue %}
|
111
|
+
{% endif %}
|
112
|
+
|
113
|
+
{% include {{ related_template }} %}
|
114
|
+
{% endfor %}
|
115
|
+
</div>
|
116
|
+
{%- endif %}
|
data/_layouts/default.html
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
{%- assign style = page.style | default: site.style %}
|
1
|
+
{%- assign style = page.style | default: layout.style | default: site.style %}
|
2
2
|
{%- assign user = site.github.owner %}
|
3
3
|
{%- assign name = site.title | default: user.name | default: user.login %}
|
4
4
|
{%- assign user_img = site.user_image | default: user.avatar_url %}
|
@@ -19,9 +19,8 @@
|
|
19
19
|
{% include header-sidebar.html %}
|
20
20
|
{%- endif %}
|
21
21
|
|
22
|
-
<div class="flex-column flex-1 min-width-0">
|
23
22
|
{{ content }}
|
24
|
-
|
23
|
+
|
25
24
|
{% if style== 'sidebar' %}
|
26
25
|
</div>
|
27
26
|
{% endif %}
|
data/_layouts/home.html
CHANGED
@@ -3,7 +3,7 @@ layout: page
|
|
3
3
|
---
|
4
4
|
<div class="py-3">
|
5
5
|
{%- assign posts_total = site.posts | size %}
|
6
|
-
{%- assign posts_limit = site.posts_limit | default: posts_total %}
|
6
|
+
{%- assign posts_limit = page.posts_limit | default: site.posts_limit | default: posts_total %}
|
7
7
|
|
8
8
|
{%- unless content == "" %}
|
9
9
|
{{ content }}
|
data/_layouts/landing.html
CHANGED
@@ -5,7 +5,7 @@ style: none
|
|
5
5
|
{%- assign user = site.github.owner %}
|
6
6
|
{%- assign name = site.title | default: user.name | default: user.login %}
|
7
7
|
{%- assign user_img = site.user_image | default: user.avatar_url %}
|
8
|
-
<div class="d-flex p-0
|
8
|
+
<div class="Header d-flex p-0 flex-1 height-full">
|
9
9
|
<div class="flex-column flex-1 position-sticky top-0">
|
10
10
|
<div class="Toolbar topbar d-flex flex-row py-3 flex-justify-end">
|
11
11
|
<div class="Toolbar-expand d-flex flex-justify-center d-none">
|
@@ -15,8 +15,8 @@ style: none
|
|
15
15
|
{% include toggle.html %}
|
16
16
|
</div>
|
17
17
|
</div>
|
18
|
-
<div class="text-center">
|
19
|
-
<div class="px-5 py-2">
|
18
|
+
<div class="text-center flex-1">
|
19
|
+
<div class="px-5 py-2 height-full">
|
20
20
|
{%- include masthead.html %}
|
21
21
|
</div>
|
22
22
|
{%- if site.repo_info %}
|
@@ -24,6 +24,7 @@ style: none
|
|
24
24
|
{% include mini-repo-info-card.html class="Header-link no-underline" %}
|
25
25
|
</div>
|
26
26
|
{%- endif %}
|
27
|
+
{{ content }}
|
27
28
|
{%- if site.nav %}
|
28
29
|
<div class="d-flex flex-column">
|
29
30
|
{%- include nav.html %}
|
data/_layouts/linktree.html
CHANGED
data/_layouts/page.html
CHANGED
data/_layouts/paginate.html
CHANGED
@@ -5,10 +5,10 @@ layout: page
|
|
5
5
|
<div class="d-flex flex-wrap gutter-spacious">
|
6
6
|
<!-- This loops through the paginated posts -->
|
7
7
|
{%- for post in paginator.posts %}
|
8
|
-
{%- if post
|
8
|
+
{%- if post.feature %}
|
9
9
|
{%- include post-feature-card.html %}
|
10
10
|
{%- else %}
|
11
|
-
{%- include post-card.html %}
|
11
|
+
{%- include post-card.html border="border-top" %}
|
12
12
|
{%- endif %}
|
13
13
|
{% endfor %}
|
14
14
|
</div>
|
data/_layouts/post.html
CHANGED
@@ -4,7 +4,7 @@ layout: default
|
|
4
4
|
{%- assign user = site.github.owner %}
|
5
5
|
{%- assign name = page.author | default: user.name | default: user.login %}
|
6
6
|
{%- assign image = page.image | default: site.image %}
|
7
|
-
|
7
|
+
<div class="flex-column flex-1 min-width-0">
|
8
8
|
<div class="BlogHeader position-relative border-top">
|
9
9
|
<div class="container-xl p-responsive">
|
10
10
|
<div class="gutter-spacious pt-1 ">
|
@@ -15,8 +15,7 @@ layout: default
|
|
15
15
|
<div class="offset-lg-1 col-lg-10">
|
16
16
|
<div class="position-relative z-1">
|
17
17
|
<div class="image-container">
|
18
|
-
<img src="{{ image | relative_url }}" class="cover-image rounded-2"
|
19
|
-
alt="{{ page.title }}" />
|
18
|
+
<img src="{{ image | relative_url }}" class="cover-image rounded-2" alt="{{ page.title }}" />
|
20
19
|
</div>
|
21
20
|
</div>
|
22
21
|
</div>
|
@@ -25,7 +24,7 @@ layout: default
|
|
25
24
|
<div class="BlogContent position-absolute bottom-0 width-full border-top" style="height:88px">
|
26
25
|
</div>
|
27
26
|
</div>
|
28
|
-
<div class="BlogContent">
|
27
|
+
<div class="BlogContent pb-5">
|
29
28
|
<div class="container-xl mx-auto p-responsive">
|
30
29
|
<div class="gutter-spacious pt-5">
|
31
30
|
<div class="col-12 offset-lg-1 col-lg-10">
|
@@ -48,10 +47,10 @@ layout: default
|
|
48
47
|
target="_blank"
|
49
48
|
class="d-flex flex-justify-center flex-items-center border circle social-aside"
|
50
49
|
data-proofer-ignore>
|
51
|
-
<svg
|
50
|
+
<svg width="20" height="20" viewBox="0 0 1200 1227" fill="currentColor"
|
51
|
+
xmlns="http://www.w3.org/2000/svg">
|
52
52
|
<path
|
53
|
-
d="
|
54
|
-
fill="currentColor"></path>
|
53
|
+
d="M714.163 519.284L1160.89 0H1055.03L667.137 450.887L357.328 0H0L468.492 681.821L0 1226.37H105.866L515.491 750.218L842.672 1226.37H1200L714.137 519.284H714.163ZM569.165 687.828L521.697 619.934L144.011 79.6944H306.615L611.412 515.685L658.88 583.579L1055.08 1150.3H892.476L569.165 687.854V687.828Z" />
|
55
54
|
</svg>
|
56
55
|
</a>
|
57
56
|
</li>
|
@@ -83,12 +82,21 @@ layout: default
|
|
83
82
|
</div>
|
84
83
|
<div class="col-12 col-lg-7 col-md-8 markdown-body">
|
85
84
|
{{ content }}
|
85
|
+
{%- if page.tags.size > 0 and site.tag_page_dir %}
|
86
|
+
<div class="post-tags text-mono f4-mktg mt-8">
|
87
|
+
<span class="post-tags-label flex-shrink-0 d-inline-block mt-2">Tags: </span>
|
88
|
+
<ul class="d-inline-block list-style-none color-text-link mb-0">
|
89
|
+
{% for tag in page.tags %}
|
90
|
+
<li class="d-inline-block mt-2 mb-0"><a href="{{ site.tag_page_dir | relative_url }}/{{ tag | slugify: 'pretty' }}.html">{{ tag }}</a></li>
|
91
|
+
{% endfor %}
|
92
|
+
</ul>
|
93
|
+
</div>
|
94
|
+
{%- endif %}
|
86
95
|
</div>
|
87
96
|
<div class="col-12 col-md-4 col-lg-3 markdown-body">
|
88
97
|
<div class="d-none d-md-block position-sticky top-12">
|
89
98
|
{%- capture toc_content%}{{ content | toc_only }}{% endcapture %}
|
90
|
-
|
91
|
-
{%- if toc_content contains '/li>' %}
|
99
|
+
{%- if toc_content contains "toc-entry" %}
|
92
100
|
<div class="mb-8 table-of-contents ">
|
93
101
|
<h2 class="h6-mktg pt-1">
|
94
102
|
Table of Contents
|
@@ -103,4 +111,8 @@ layout: default
|
|
103
111
|
</div>
|
104
112
|
</div>
|
105
113
|
</div>
|
114
|
+
<div class="Related container-xl mx-auto p-responsive markdown-body">
|
115
|
+
{% include related.html %}
|
116
|
+
</div>
|
117
|
+
</div>
|
106
118
|
</div>
|
data/_layouts/tags.html
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
layout: page
|
3
|
+
---
|
4
|
+
<p class="f4-mktg color-text-tertiary mt-4 mt-md-7 mb-n4">Tag</p>
|
5
|
+
<h1 class="h3-mktg mt-4 mb-6 mb-md-8">{{ page.tag | capitalize }}</h1>
|
6
|
+
|
7
|
+
<div class="d-flex flex-wrap gutter-spacious">
|
8
|
+
{% for post in page.posts %}
|
9
|
+
{%- if post.feature %}
|
10
|
+
{%- include post-feature-card.html %}
|
11
|
+
{%- else %}
|
12
|
+
{%- include post-card.html border="border-top" %}
|
13
|
+
{%- endif %}
|
14
|
+
{% endfor %}
|
15
|
+
</div>
|
data/_sass/_main.scss
CHANGED
@@ -166,6 +166,15 @@
|
|
166
166
|
background-color: var(--color-canvas-default) !important;
|
167
167
|
}
|
168
168
|
|
169
|
+
.post-tags::before {
|
170
|
+
content: "";
|
171
|
+
display: block;
|
172
|
+
height: 5px;
|
173
|
+
width: 20px;
|
174
|
+
background-color: var(--color-fg-default);
|
175
|
+
margin-bottom: 4px;
|
176
|
+
}
|
177
|
+
|
169
178
|
|
170
179
|
body::before {
|
171
180
|
content: "";
|
data/assets/css/theme.scss
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-theme-profile
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.7.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Allison Thackston
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-11-
|
11
|
+
date: 2023-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -30,20 +30,6 @@ dependencies:
|
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '5.0'
|
33
|
-
- !ruby/object:Gem::Dependency
|
34
|
-
name: github-pages
|
35
|
-
requirement: !ruby/object:Gem::Requirement
|
36
|
-
requirements:
|
37
|
-
- - "~>"
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: '228'
|
40
|
-
type: :runtime
|
41
|
-
prerelease: false
|
42
|
-
version_requirements: !ruby/object:Gem::Requirement
|
43
|
-
requirements:
|
44
|
-
- - "~>"
|
45
|
-
- !ruby/object:Gem::Version
|
46
|
-
version: '228'
|
47
33
|
- !ruby/object:Gem::Dependency
|
48
34
|
name: jekyll-github-metadata
|
49
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,20 +58,6 @@ dependencies:
|
|
72
58
|
- - "~>"
|
73
59
|
- !ruby/object:Gem::Version
|
74
60
|
version: '19.4'
|
75
|
-
- !ruby/object:Gem::Dependency
|
76
|
-
name: jekyll-paginate
|
77
|
-
requirement: !ruby/object:Gem::Requirement
|
78
|
-
requirements:
|
79
|
-
- - "~>"
|
80
|
-
- !ruby/object:Gem::Version
|
81
|
-
version: '1.1'
|
82
|
-
type: :runtime
|
83
|
-
prerelease: false
|
84
|
-
version_requirements: !ruby/object:Gem::Requirement
|
85
|
-
requirements:
|
86
|
-
- - "~>"
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: '1.1'
|
89
61
|
- !ruby/object:Gem::Dependency
|
90
62
|
name: jekyll-seo-tag
|
91
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -106,14 +78,14 @@ dependencies:
|
|
106
78
|
requirements:
|
107
79
|
- - "~>"
|
108
80
|
- !ruby/object:Gem::Version
|
109
|
-
version: 0.18
|
81
|
+
version: '0.18'
|
110
82
|
type: :runtime
|
111
83
|
prerelease: false
|
112
84
|
version_requirements: !ruby/object:Gem::Requirement
|
113
85
|
requirements:
|
114
86
|
- - "~>"
|
115
87
|
- !ruby/object:Gem::Version
|
116
|
-
version: 0.18
|
88
|
+
version: '0.18'
|
117
89
|
- !ruby/object:Gem::Dependency
|
118
90
|
name: jemoji
|
119
91
|
requirement: !ruby/object:Gem::Requirement
|
@@ -137,7 +109,6 @@ extra_rdoc_files: []
|
|
137
109
|
files:
|
138
110
|
- LICENSE.txt
|
139
111
|
- README.md
|
140
|
-
- _config.yml
|
141
112
|
- _includes/breadcrumbs.html
|
142
113
|
- _includes/footer.html
|
143
114
|
- _includes/head.html
|
@@ -157,11 +128,13 @@ files:
|
|
157
128
|
- _includes/post-timeline-card.html
|
158
129
|
- _includes/post-timeline.html
|
159
130
|
- _includes/posts.html
|
131
|
+
- _includes/related.html
|
160
132
|
- _includes/repo-card.html
|
161
133
|
- _includes/repositories.html
|
162
134
|
- _includes/social.html
|
163
135
|
- _includes/toggle.html
|
164
136
|
- _includes/user-metadata.html
|
137
|
+
- _layouts/category_layout.html
|
165
138
|
- _layouts/default.html
|
166
139
|
- _layouts/home.html
|
167
140
|
- _layouts/landing.html
|
@@ -171,11 +144,11 @@ files:
|
|
171
144
|
- _layouts/post.html
|
172
145
|
- _layouts/profile.html
|
173
146
|
- _layouts/repositories.html
|
147
|
+
- _layouts/tags.html
|
174
148
|
- _sass/_highlight-syntax.scss
|
175
149
|
- _sass/_language-colors.scss
|
176
150
|
- _sass/_main.scss
|
177
151
|
- _sass/jekyll-theme-profile.scss
|
178
|
-
- assets/blog/index.html
|
179
152
|
- assets/css/style.scss
|
180
153
|
- assets/css/theme.scss
|
181
154
|
- assets/img/default.png
|
data/_config.yml
DELETED
@@ -1,161 +0,0 @@
|
|
1
|
-
title: Jekyll Theme Profile
|
2
|
-
description: Github Profile built with jekyll-theme-profile
|
3
|
-
repository: athackst/jekyll-theme-profile
|
4
|
-
# The style of the website
|
5
|
-
style: topbar # One of "stacked", "sidebar", "topbar"
|
6
|
-
# The user/project avatar. If not set the avatar of the project owner will be used.
|
7
|
-
user_image: /media/user-image.jpg
|
8
|
-
# Optional custom background image and overlay
|
9
|
-
# background:
|
10
|
-
# image: /media/background-img.jpg
|
11
|
-
# overlay: rgba(0, 0, 0, 0.7)
|
12
|
-
# light:
|
13
|
-
# overlay: rgba(255, 255, 255, 0.5)
|
14
|
-
# dark:
|
15
|
-
# overlay: rgba(0, 0, 0, 0.5)
|
16
|
-
|
17
|
-
# Optional custom header colors
|
18
|
-
# header:
|
19
|
-
# color: "#4051b5"
|
20
|
-
# text: "rgba(255,255,255,0.7)"
|
21
|
-
# accent: "#ffffff"
|
22
|
-
|
23
|
-
repo_info: true # Show the information for the source of this project
|
24
|
-
user_metadata: true # Show the metadata associated with the user
|
25
|
-
profile_link: true # Show a link to the github profile for the user
|
26
|
-
|
27
|
-
####################
|
28
|
-
# Social media
|
29
|
-
# icon_color: "#959da5" # The color of the social media icons on the site
|
30
|
-
# social_media: # Your social media accounts
|
31
|
-
# behance: your_username
|
32
|
-
# dribbble: your_username
|
33
|
-
# docker: your_username
|
34
|
-
# facebook: your_username
|
35
|
-
# github: your_username
|
36
|
-
# hackerrank: your_username
|
37
|
-
# instagram: your_username
|
38
|
-
# keybase: your_username
|
39
|
-
# linkedin: your_username
|
40
|
-
# mail: email@address
|
41
|
-
# mastodon: your_username
|
42
|
-
# medium: your_username
|
43
|
-
# stackoverflow: your_user_id
|
44
|
-
# telegram: your_username
|
45
|
-
# threads: your_username
|
46
|
-
# tiktok: your_username
|
47
|
-
# twitter: your_username
|
48
|
-
# unsplash: your_username
|
49
|
-
# vk: your_username
|
50
|
-
# vscode: your_username
|
51
|
-
# youtube: your_username
|
52
|
-
# x: your_username
|
53
|
-
|
54
|
-
####################
|
55
|
-
# Navigation links
|
56
|
-
nav:
|
57
|
-
- name: Topbar
|
58
|
-
url: /test/home/topbar.html
|
59
|
-
- name: Appbar
|
60
|
-
url: /test/home/appbar.html
|
61
|
-
- name: Sidebar
|
62
|
-
url: /test/home/sidebar.html
|
63
|
-
- name: Stacked
|
64
|
-
url: /test/home/stacked.html
|
65
|
-
|
66
|
-
####################
|
67
|
-
# List of links for home page
|
68
|
-
links:
|
69
|
-
- name: Example page with topbar
|
70
|
-
url: /test/page/topbar
|
71
|
-
thumbnail: /media/topbar-icon.png
|
72
|
-
- name: Example page with appbar
|
73
|
-
url: /test/page/appbar
|
74
|
-
thumbnail: /media/appbar-icon.png
|
75
|
-
- name: Example page with sidebar
|
76
|
-
url: /test/page/sidebar
|
77
|
-
thumbnail: /media/sidebar-icon.png
|
78
|
-
- name: Example page with header stacked
|
79
|
-
url: /test/page/stacked
|
80
|
-
thumbnail: /media/stacked-icon.png
|
81
|
-
- name: Example page with a custom background
|
82
|
-
url: /test/page/background
|
83
|
-
thumbnail: /media/icon-bg.png
|
84
|
-
- name: Example Linktree page
|
85
|
-
url: /test/linktree
|
86
|
-
thumbnail: /media/links.png
|
87
|
-
- name: Example Profile page
|
88
|
-
url: /test/profile
|
89
|
-
thumbnail: /media/user-image.jpg
|
90
|
-
- name: Example Reposotiries page
|
91
|
-
url: /test/repositories
|
92
|
-
thumbnail: /media/repositories.png
|
93
|
-
- name: Example Landing page
|
94
|
-
url: /test/landing
|
95
|
-
thumbnail: /media/landing.png
|
96
|
-
|
97
|
-
###################
|
98
|
-
# Repositories to show on home page
|
99
|
-
repositories:
|
100
|
-
sort_by: stars
|
101
|
-
# sort_by options:
|
102
|
-
# - pushed
|
103
|
-
# - stars
|
104
|
-
limit: 24
|
105
|
-
exclude:
|
106
|
-
archived: true
|
107
|
-
forks: true
|
108
|
-
repositories:
|
109
|
-
# - list of respositories to exclude
|
110
|
-
|
111
|
-
####################
|
112
|
-
# Blog
|
113
|
-
posts_limit: 3 # The number of posts to show in home
|
114
|
-
paginate: 6 # The number of posts to show per page of pagination of blog posts
|
115
|
-
paginate_path: "/assets/blog/page:num"
|
116
|
-
markdown: kramdown
|
117
|
-
highlighter: rouge
|
118
|
-
# kramdown:
|
119
|
-
# input: GFM
|
120
|
-
# syntax_highlighter: rouge
|
121
|
-
# syntax_highlighter_opts: # Rouge Options › https://github.com/jneen/rouge#full-options
|
122
|
-
# css_class: highlight
|
123
|
-
# # default_lang: console
|
124
|
-
# span:
|
125
|
-
# line_numbers: false
|
126
|
-
# block:
|
127
|
-
# line_numbers: true
|
128
|
-
# start_line: 1
|
129
|
-
|
130
|
-
# ============= general settings for the theme ===============
|
131
|
-
plugins:
|
132
|
-
- jekyll-github-metadata
|
133
|
-
- jekyll-octicons
|
134
|
-
- jekyll-paginate
|
135
|
-
- jekyll-seo-tag
|
136
|
-
- jekyll-toc
|
137
|
-
- jemoji
|
138
|
-
|
139
|
-
defaults:
|
140
|
-
- scope:
|
141
|
-
path: "" # an empty string here means all files in the project
|
142
|
-
type: "posts"
|
143
|
-
values:
|
144
|
-
layout: "post"
|
145
|
-
permalink: /blog/:year/:month/:day/:title.html
|
146
|
-
image: /assets/img/default.png # The default image used for social and posts.
|
147
|
-
toc: true
|
148
|
-
|
149
|
-
exclude:
|
150
|
-
- "Gemfile"
|
151
|
-
- "Gemfile.lock"
|
152
|
-
- "node_modules"
|
153
|
-
- "vendor/bundle/"
|
154
|
-
- "vendor/cache/"
|
155
|
-
- "vendor/gems/"
|
156
|
-
- "vendor/ruby/"
|
157
|
-
- .vscode
|
158
|
-
- .devcontainer
|
159
|
-
- .deprecated
|
160
|
-
- .github
|
161
|
-
- "*.gem"
|