jekyll-theme-profile 1.6.1 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 02c55f79b96999ecd241bbd4752fb7421c25b8d1d36bc2cda66ec41c884d8486
4
- data.tar.gz: baa1f055ab8c8fa47721bc02880185f5bd6f1e0af0c13540ff8e321999ea1f51
3
+ metadata.gz: 183ece8d54449696105ba18c47d30dad8c57e9aff4b8867dfcd266261107fde7
4
+ data.tar.gz: 76ec9a8e21925dfb00527f16d62dd5d6981949a84cc4c8230fbc288aa7da577c
5
5
  SHA512:
6
- metadata.gz: af06947545436049c292eb47c00ef8a62be90d0b4231ce211cf0458fc6f46da702b9a4f2447d0fcf2f182ab7f2e7dd90895c42677c2fc5cba07e94608c1e5e52
7
- data.tar.gz: 29d045112c1cc2531adadd922bd2b28c9fb09196859c546f5885bbac2c105492bc7a1d544640b4ea66a0f2ec7443d7d38b68d995a8d6fea480dce3be44788daa
6
+ metadata.gz: fc5e2f829a93ee4f30eaabd2bc89b903b9ad93ff440fe045ebd56b11162095097713f7e48efcc117f91870da5b3694898876a6176c41f460ba425bf03cce53b1
7
+ data.tar.gz: 0f60be4de40f8a280e886e9cb31e124239f6201b86d328c99a9b7fa1e907593b97af07fbd3adc30ade2af54bbf6cf3d9becd73a520b3fbb8dbd619463d20d2d6
data/README.md CHANGED
@@ -131,7 +131,7 @@ repositories:
131
131
 
132
132
  ####################
133
133
  # Blog
134
- posts_limit: 3 # The number of posts to show in home
134
+ posts_limit: 3 # The number of posts to show in home (also can be defined in page)
135
135
 
136
136
  paginate: 6 # The number of posts to show per page of pagination of blog posts
137
137
  paginate_path: "/assets/blog/page:num"
data/_config.yml CHANGED
@@ -1,11 +1,16 @@
1
+ # # Welcome to the Jekyll Theme Profile!
2
+ #
3
+ # ######## Jekyll Site Settings ##########
1
4
  title: Jekyll Theme Profile
2
5
  description: Github Profile built with jekyll-theme-profile
3
6
  repository: athackst/jekyll-theme-profile
7
+
8
+ # ########### Theme settings ###############
4
9
  # The style of the website
5
10
  style: topbar # One of "stacked", "sidebar", "topbar"
6
11
  # The user/project avatar. If not set the avatar of the project owner will be used.
7
12
  user_image: /media/user-image.jpg
8
- # Optional custom background image and overlay
13
+ # # Optional custom background image and overlay
9
14
  # background:
10
15
  # image: /media/background-img.jpg
11
16
  # overlay: rgba(0, 0, 0, 0.7)
@@ -14,7 +19,7 @@ user_image: /media/user-image.jpg
14
19
  # dark:
15
20
  # overlay: rgba(0, 0, 0, 0.5)
16
21
 
17
- # Optional custom header colors
22
+ # # Optional custom header colors
18
23
  # header:
19
24
  # color: "#4051b5"
20
25
  # text: "rgba(255,255,255,0.7)"
@@ -23,9 +28,8 @@ user_image: /media/user-image.jpg
23
28
  repo_info: true # Show the information for the source of this project
24
29
  user_metadata: true # Show the metadata associated with the user
25
30
  profile_link: true # Show a link to the github profile for the user
26
-
27
- ####################
28
- # Social media
31
+ ##########################
32
+ # # Social media settings
29
33
  # icon_color: "#959da5" # The color of the social media icons on the site
30
34
  # social_media: # Your social media accounts
31
35
  # behance: your_username
@@ -64,7 +68,7 @@ nav:
64
68
  url: /test/home/stacked.html
65
69
 
66
70
  ####################
67
- # List of links for home page
71
+ # List of links for link cards
68
72
  links:
69
73
  - name: Example page with topbar
70
74
  url: /test/page/topbar
@@ -108,11 +112,20 @@ repositories:
108
112
  repositories:
109
113
  # - list of respositories to exclude
110
114
 
115
+
116
+ # ########### Plugin settings ###############
111
117
  ####################
112
- # Blog
113
- posts_limit: 3 # The number of posts to show in home
118
+ # jekyll-paginate settings
119
+ posts_limit: 3 # The number of posts to show in home (also can be defined in page)
114
120
  paginate: 6 # The number of posts to show per page of pagination of blog posts
115
121
  paginate_path: "/assets/blog/page:num"
122
+ ###################
123
+ # jekyll-tagging settings
124
+ tag_page_layout: tags
125
+ tag_page_dir: tags
126
+
127
+
128
+ # ============= general settings for the theme ===============
116
129
  markdown: kramdown
117
130
  highlighter: rouge
118
131
  # kramdown:
@@ -134,6 +147,7 @@ plugins:
134
147
  - jekyll-paginate
135
148
  - jekyll-seo-tag
136
149
  - jekyll-toc
150
+ - jekyll-tagging
137
151
  - jemoji
138
152
 
139
153
  defaults:
@@ -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-top">
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>
@@ -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/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 }}
@@ -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 == paginator.posts.first %}
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
@@ -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 xmlns="http://www.w3.org/2000/svg" viewBox="0 0 273.5 222.3" height="18">
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="M273.5 26.3a109.77 109.77 0 0 1-32.2 8.8 56.07 56.07 0 0 0 24.7-31 113.39 113.39 0 0 1-35.7 13.6 56.1 56.1 0 0 0-97 38.4 54 54 0 0 0 1.5 12.8A159.68 159.68 0 0 1 19.1 10.3a56.12 56.12 0 0 0 17.4 74.9 56.06 56.06 0 0 1-25.4-7v.7a56.11 56.11 0 0 0 45 55 55.65 55.65 0 0 1-14.8 2 62.39 62.39 0 0 1-10.6-1 56.24 56.24 0 0 0 52.4 39 112.87 112.87 0 0 1-69.7 24 119 119 0 0 1-13.4-.8 158.83 158.83 0 0 0 86 25.2c103.2 0 159.6-85.5 159.6-159.6 0-2.4-.1-4.9-.2-7.3a114.25 114.25 0 0 0 28.1-29.1"
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 %}
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
- <!-- {{ toc_content }}-->
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,7 @@ 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>
106
117
  </div>
@@ -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: "";
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.6.1
4
+ version: 1.7.0
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-21 00:00:00.000000000 Z
11
+ date: 2023-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -114,6 +114,20 @@ dependencies:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
116
  version: 0.18.0
117
+ - !ruby/object:Gem::Dependency
118
+ name: jekyll-tagging
119
+ requirement: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - "~>"
122
+ - !ruby/object:Gem::Version
123
+ version: 1.1.0
124
+ type: :runtime
125
+ prerelease: false
126
+ version_requirements: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: 1.1.0
117
131
  - !ruby/object:Gem::Dependency
118
132
  name: jemoji
119
133
  requirement: !ruby/object:Gem::Requirement
@@ -157,6 +171,7 @@ files:
157
171
  - _includes/post-timeline-card.html
158
172
  - _includes/post-timeline.html
159
173
  - _includes/posts.html
174
+ - _includes/related.html
160
175
  - _includes/repo-card.html
161
176
  - _includes/repositories.html
162
177
  - _includes/social.html
@@ -171,6 +186,7 @@ files:
171
186
  - _layouts/post.html
172
187
  - _layouts/profile.html
173
188
  - _layouts/repositories.html
189
+ - _layouts/tags.html
174
190
  - _sass/_highlight-syntax.scss
175
191
  - _sass/_language-colors.scss
176
192
  - _sass/_main.scss