jekyll-twitter-bootstrap 5.3.0.dev5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/LICENSE.txt +21 -0
- data/README.md +222 -0
- data/README_OWNER.md +33 -0
- data/_config.yml +85 -0
- data/_includes/_components/carousel.html +78 -0
- data/_includes/_components/columns_icons.html +60 -0
- data/_includes/_components/columns_icons_grid.html +97 -0
- data/_includes/_components/columns_icons_hanging.html +51 -0
- data/_includes/_components/columns_image_cards.html +52 -0
- data/_includes/_components/featurette_left.html +21 -0
- data/_includes/_components/featurette_right.html +21 -0
- data/_includes/_components/hero_centered.html +18 -0
- data/_includes/_components/hero_centered_dark.html +20 -0
- data/_includes/_components/hero_image_right.html +23 -0
- data/_includes/_components/jumbotron_full.html +20 -0
- data/_includes/_components/jumbotron_split.html +46 -0
- data/_includes/categories.html +16 -0
- data/_includes/footer.html +33 -0
- data/_includes/footer_custom.html +0 -0
- data/_includes/google_analytics.html +13 -0
- data/_includes/head.html +16 -0
- data/_includes/head_custom.html +0 -0
- data/_includes/header.html +30 -0
- data/_includes/header_custom.html +0 -0
- data/_includes/posts_categories.html +14 -0
- data/_includes/posts_latest.html +22 -0
- data/_includes/posts_tags.html +14 -0
- data/_includes/tags.html +16 -0
- data/_layouts/base.html +16 -0
- data/_layouts/blog.html +73 -0
- data/_layouts/example_components.html +471 -0
- data/_layouts/home.html +7 -0
- data/_layouts/page.html +9 -0
- data/_layouts/page_no_title.html +5 -0
- data/_layouts/page_sidebar.html +24 -0
- data/_layouts/post.html +41 -0
- data/_sass/styles.scss +0 -0
- data/assets/css/styles.css +176 -0
- data/assets/images/bootstrap-themes.png +0 -0
- data/assets/images/favicons/apple-touch-icon.png +0 -0
- data/assets/images/favicons/favicon-16x16.png +0 -0
- data/assets/images/favicons/favicon-32x32.png +0 -0
- data/assets/images/favicons/favicon.ico +0 -0
- data/assets/images/favicons/safari-pinned-tab.svg +1 -0
- data/assets/images/unsplash-photo-1.jpg +0 -0
- data/assets/images/unsplash-photo-2.jpg +0 -0
- data/assets/images/unsplash-photo-3.jpg +0 -0
- data/assets/svg/bootstrap-icons.svg +58 -0
- data/assets/svg/bootstrap.svg +23 -0
- data/assets/svg/placeholder-500-500.svg +5 -0
- data/assets/svg/placeholder-full-gray.svg +3 -0
- metadata +157 -0
@@ -0,0 +1,51 @@
|
|
1
|
+
<!-- BEGIN Hanging icons -->
|
2
|
+
<div class="container px-4 py-5 component-columns-icons-hanging">
|
3
|
+
{%- if include.title -%}
|
4
|
+
<h2 class="pb-2 border-bottom">{{ include.title }}</h2>
|
5
|
+
{%- endif -%}
|
6
|
+
<div class="row g-4 py-5 row-cols-1 row-cols-lg-3">
|
7
|
+
{%- if !include.col1_title -%}
|
8
|
+
<div class="col d-flex align-items-start">
|
9
|
+
<div class="icon-square text-bg-light d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
|
10
|
+
<svg class="bi" width="1em" height="1em"><use xlink:href="{{ include.col1_icon_path }}"/></svg>
|
11
|
+
</div>
|
12
|
+
<div>
|
13
|
+
<h3 class="fs-2">{{ include.col1_title }}</h3>
|
14
|
+
<div class="mb-3">{{ include.col1_body }}</div>
|
15
|
+
{%- if !include.col1_link_text -%}
|
16
|
+
<a href="{{ include.col1_link_url}}" class="btn btn-primary">{{ include.col1_link_text }}</a>
|
17
|
+
{%- endif -%}
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
{%- endif -%}
|
21
|
+
{%- if !include.col2_title -%}
|
22
|
+
<div class="col d-flex align-items-start">
|
23
|
+
<div class="icon-square text-bg-light d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
|
24
|
+
<svg class="bi" width="1em" height="1em"><use xlink:href="{{ include.col2_icon_path }}"/></svg>
|
25
|
+
</div>
|
26
|
+
<div>
|
27
|
+
<h3 class="fs-2">{{ include.col2_title }}</h3>
|
28
|
+
<div class="mb-3">{{ include.col2_body }}</div>
|
29
|
+
{%- if !include.col2_link_text -%}
|
30
|
+
<a href="{{ include.col2_link_url}}" class="btn btn-primary">{{ include.col2_link_text }}</a>
|
31
|
+
{%- endif -%}
|
32
|
+
</div>
|
33
|
+
</div>
|
34
|
+
{%- endif -%}
|
35
|
+
{%- if !include.col1_title -%}
|
36
|
+
<div class="col d-flex align-items-start">
|
37
|
+
<div class="icon-square text-bg-light d-inline-flex align-items-center justify-content-center fs-4 flex-shrink-0 me-3">
|
38
|
+
<svg class="bi" width="1em" height="1em"><use xlink:href="{{ include.col3_icon_path }}"/></svg>
|
39
|
+
</div>
|
40
|
+
<div>
|
41
|
+
<h3 class="fs-2">{{ include.col3_title }}</h3>
|
42
|
+
<div class="mb-3">{{ include.col3_body }}</div>
|
43
|
+
{%- if !include.col3_link_text -%}
|
44
|
+
<a href="{{ include.col3_link_url}}" class="btn btn-primary">{{ include.col3_link_text }}</a>
|
45
|
+
{%- endif -%}
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
{%- endif -%}
|
49
|
+
</div>
|
50
|
+
</div>
|
51
|
+
<!-- END Hanging icons -->
|
@@ -0,0 +1,52 @@
|
|
1
|
+
{%- if include.card_title_align == "Center" -%}
|
2
|
+
{% assign col_title_align_class = "text-center" %}
|
3
|
+
{% assign col_link_align_class = "mx-auto" %}
|
4
|
+
{%- else -%}
|
5
|
+
{% assign class_align = "" %}
|
6
|
+
{% assign col_link_align_class = "me-auto" %}
|
7
|
+
{%- endif -%}
|
8
|
+
<!-- BEGIN Custom cards -->
|
9
|
+
<div class="container px-4 py-5 columns-image-cards">
|
10
|
+
{%- if include.title -%}
|
11
|
+
<h2 class="pb-2 border-bottom">{{ include.title }}</h2>
|
12
|
+
{%- endif -%}
|
13
|
+
<div class="row row-cols-1 row-cols-lg-3 align-items-stretch g-4 py-5">
|
14
|
+
{%- if !include.col1_title -%}
|
15
|
+
<div class="col">
|
16
|
+
<div class="card card-cover h-100 overflow-hidden text-bg-dark rounded-4 shadow-lg" style="background-image: url('{{ include.col1_bgimg_path }}');">
|
17
|
+
<div class="d-flex flex-column h-100 p-5 pb-3 text-white text-shadow-1 {{ col_title_align_class }}">
|
18
|
+
<h3 class="pt-5 mt-5 mb-4 display-6 lh-1 fw-bold">{{ include.col1_title }}</h3>
|
19
|
+
{%- if !include.col1_link_text -%}
|
20
|
+
<a href="{{ include.col1_link_url }}" class="btn btn-secondary {{ col_link_align_class }}">{{ include.col1_link_text }}</a>
|
21
|
+
{%- endif -%}
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
</div>
|
25
|
+
{%- endif -%}
|
26
|
+
{%- if !include.col2_title -%}
|
27
|
+
<div class="col">
|
28
|
+
<div class="card card-cover h-100 overflow-hidden text-bg-dark rounded-4 shadow-lg" style="background-image: url('{{ include.col2_bgimg_path }}');">
|
29
|
+
<div class="d-flex flex-column h-100 p-5 pb-3 text-white text-shadow-1 {{ col_title_align_class }}">
|
30
|
+
<h3 class="pt-5 mt-5 mb-4 display-6 lh-1 fw-bold">{{ include.col2_title }}</h3>
|
31
|
+
{%- if !include.col2_link_text -%}
|
32
|
+
<a href="{{ include.col2_link_url }}" class="btn btn-secondary {{ col_link_align_class }}">{{ include.col2_link_text }}</a>
|
33
|
+
{%- endif -%}
|
34
|
+
</div>
|
35
|
+
</div>
|
36
|
+
</div>
|
37
|
+
{%- endif -%}
|
38
|
+
{%- if !include.col3_title -%}
|
39
|
+
<div class="col">
|
40
|
+
<div class="card card-cover h-100 overflow-hidden text-bg-dark rounded-4 shadow-lg" style="background-image: url('{{ include.col3_bgimg_path }}');">
|
41
|
+
<div class="d-flex flex-column h-100 p-5 pb-3 text-white text-shadow-1 {{ col_title_align_class }}">
|
42
|
+
<h3 class="pt-5 mt-5 mb-4 display-6 lh-1 fw-bold">{{ include.col3_title }}</h3>
|
43
|
+
{%- if !include.col3_link_text -%}
|
44
|
+
<a href="{{ include.col3_link_url }}" class="btn btn-secondary {{ col_link_align_class }}">{{ include.col3_link_text }}</a>
|
45
|
+
{%- endif -%}
|
46
|
+
</div>
|
47
|
+
</div>
|
48
|
+
</div>
|
49
|
+
{%- endif -%}
|
50
|
+
</div>
|
51
|
+
</div>
|
52
|
+
<!-- END Custom cards -->
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<!-- BEGIN Featurette Left -->
|
2
|
+
<div class="row featurette featurette-left my-5">
|
3
|
+
<div class="col-md-7">
|
4
|
+
{%- if include.title -%}
|
5
|
+
<h2 class="featurette-heading fw-normal lh-1">{{ include.title }}
|
6
|
+
{%- if include.tagline -%}
|
7
|
+
<span class="text-muted ms-3">{{ include.tagline }}</span>
|
8
|
+
{%- endif -%}
|
9
|
+
</h2>
|
10
|
+
{%- endif -%}
|
11
|
+
{%- if include.body -%}
|
12
|
+
<p class="lead">{{ include.body }}</p>
|
13
|
+
{%- endif -%}
|
14
|
+
</div>
|
15
|
+
<div class="col-md-5">
|
16
|
+
{%- if include.image_path -%}
|
17
|
+
<img class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" width="500" height="500" src="{{ include.image_path }}" alt="{{ include.image_text }}" />
|
18
|
+
{%- endif -%}
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
<!-- END Featurette Left -->
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<!-- BEGIN Featurette Right -->
|
2
|
+
<div class="row featurette featurette-right my-5">
|
3
|
+
<div class="col-md-7 order-md-2">
|
4
|
+
{%- if include.title -%}
|
5
|
+
<h2 class="featurette-heading fw-normal lh-1">{{ include.title }}
|
6
|
+
{%- if include.tagline -%}
|
7
|
+
<span class="text-muted ms-3">{{ include.tagline }}</span>
|
8
|
+
{%- endif -%}
|
9
|
+
</h2>
|
10
|
+
{%- endif -%}
|
11
|
+
{%- if include.body -%}
|
12
|
+
<p class="lead">{{ include.body }}</p>
|
13
|
+
{%- endif -%}
|
14
|
+
</div>
|
15
|
+
<div class="col-md-5 order-md-1">
|
16
|
+
{%- if include.image_path -%}
|
17
|
+
<img class="bd-placeholder-img bd-placeholder-img-lg featurette-image img-fluid mx-auto" width="500" height="500" src="{{ include.image_path }}" alt="{{ include.image_text }}" />
|
18
|
+
{%- endif -%}
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
<!-- END Featurette Right -->
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<!-- BEGIN Hero Centered -->
|
2
|
+
<div class="px-4 py-5 my-5 text-center component-hero-centered">
|
3
|
+
<h1 class="display-5 fw-bold">{{ include.title }}</h1>
|
4
|
+
<div class="col-lg-6 mx-auto">
|
5
|
+
<p class="lead mb-4">{{ include.body }}</p>
|
6
|
+
{%- if include.primary_link_text or include.secondary_link_text -%}
|
7
|
+
<div class="d-grid gap-2 d-sm-flex justify-content-sm-center">
|
8
|
+
{%- if include.primary_link_text -%}
|
9
|
+
<button type="button" class="btn btn-primary btn-lg px-4 gap-3" onclick="window.location.href='{{ include.primary_link_url }}';">{{ include.primary_link_text }}</button>
|
10
|
+
{%- endif -%}
|
11
|
+
{%- if include.secondary_link_text -%}
|
12
|
+
<button type="button" class="btn btn-outline-secondary btn-lg px-4" onclick="window.location.href='{{ include.secondary_link_url }}';">{{ include.secondary_link_text }}</button>
|
13
|
+
{%- endif -%}
|
14
|
+
</div>
|
15
|
+
{%- endif -%}
|
16
|
+
</div>
|
17
|
+
</div>
|
18
|
+
<!-- BEGIN Hero Centered -->
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<!-- BEGIN Hero Centered Dark -->
|
2
|
+
<div class="bg-dark text-secondary px-4 py-5 my-5 text-center component-hero-centered-dark">
|
3
|
+
<div class="py-5">
|
4
|
+
<h1 class="display-5 fw-bold text-white">{{ include.title }}</h1>
|
5
|
+
<div class="col-lg-6 mx-auto">
|
6
|
+
<p class="fs-5 mb-4">{{ include.body }}</p>
|
7
|
+
{%- if include.primary_link_text or include.secondary_link_text -%}
|
8
|
+
<div class="d-grid gap-2 d-sm-flex justify-content-sm-center">
|
9
|
+
{%- if include.primary_link_text -%}
|
10
|
+
<button type="button" class="btn btn-outline-primary btn-lg px-4 me-sm-3 fw-bold" onclick="window.location.href='{{ include.primary_link_url }}';">{{ include.primary_link_text }}</button>
|
11
|
+
{%- endif -%}
|
12
|
+
{%- if include.secondary_link_text -%}
|
13
|
+
<button type="button" class="btn btn-outline-light btn-lg px-4" onclick="window.location.href='{{ include.secondary_link_url }}';">{{ include.secondary_link_text }}</button>
|
14
|
+
{%- endif -%}
|
15
|
+
</div>
|
16
|
+
{%- endif -%}
|
17
|
+
</div>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
<!-- END Hero Centered Dark -->
|
@@ -0,0 +1,23 @@
|
|
1
|
+
<!-- BEGIN Hero Image Right -->
|
2
|
+
<div class="container col-xxl-8 px-4 my-5 component-hero-image-right">
|
3
|
+
<div class="row flex-lg-row-reverse align-items-center g-5 py-5">
|
4
|
+
<div class="col-10 col-sm-8 col-lg-6">
|
5
|
+
<img src="{{ include.image_path }}" class="d-block mx-lg-auto img-fluid" alt="{{ include.image_text }}" title="{{ include.image_title }}" width="700" height="500" loading="lazy">
|
6
|
+
</div>
|
7
|
+
<div class="col-lg-6">
|
8
|
+
<h1 class="display-5 fw-bold lh-1 mb-3">{{ include.title }}</h1>
|
9
|
+
<p class="lead">{{ include.body }}</p>
|
10
|
+
{%- if include.primary_link_text or include.secondary_link_text -%}
|
11
|
+
<div class="d-grid gap-2 d-md-flex justify-content-md-start">
|
12
|
+
{%- if include.primary_link_text -%}
|
13
|
+
<button type="button" class="btn btn-primary btn-lg px-4 me-md-2" onclick="window.location.href='{{ include.primary_link_url }}';">{{ include.primary_link_text }}</button>
|
14
|
+
{%- endif -%}
|
15
|
+
{%- if include.secondary_link_text -%}
|
16
|
+
<button type="button" class="btn btn-outline-secondary btn-lg px-4" onclick="window.location.href='{{ include.secondary_link_url }}';">{{ include.secondary_link_text }}</button>
|
17
|
+
{%- endif -%}
|
18
|
+
</div>
|
19
|
+
{%- endif -%}
|
20
|
+
</div>
|
21
|
+
</div>
|
22
|
+
</div>
|
23
|
+
<!-- END Hero Image Right -->
|
@@ -0,0 +1,20 @@
|
|
1
|
+
<!-- BEGIN Jumbotron Full -->
|
2
|
+
<div class="p-5 mb-4 bg-light rounded-3 jumbotron-full">
|
3
|
+
<div class="container-fluid py-5">
|
4
|
+
{%- if include.title -%}
|
5
|
+
<h1 class="display-5 fw-bold">{{ include.title }}</h1>
|
6
|
+
{%- endif -%}
|
7
|
+
<div class="col-md-12 fs-4">{{ include.body }}</div>
|
8
|
+
{%- if include.primary_link_text or include.secondary_link_text -%}
|
9
|
+
<div class="mt-3">
|
10
|
+
{%- if include.primary_link_text -%}
|
11
|
+
<button class="btn btn-primary btn-lg me-3" type="button" onclick="window.location.href='{{ include.primary_link_url }}';">{{ include.primary_link_text }}</button>
|
12
|
+
{%- endif -%}
|
13
|
+
{%- if include.secondary_link_text -%}
|
14
|
+
<button class="btn btn-secondary btn-lg me-3" type="button" onclick="window.location.href='{{ include.secondary_link_url }}';">{{ include.secondary_link_text }}</button>
|
15
|
+
{%- endif -%}
|
16
|
+
</div>
|
17
|
+
{%- endif -%}
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
<!-- END Jumbotron Full -->
|
@@ -0,0 +1,46 @@
|
|
1
|
+
{%- if include.left_style_dark != false -%}
|
2
|
+
{% assign left_div_style = "text-bg-dark" %}
|
3
|
+
{% assign left_button_style = "btn-outline-light" %}
|
4
|
+
{%- else -%}
|
5
|
+
{% assign left_div_style = "bg-light border" %}
|
6
|
+
{% assign left_button_style = "btn-outline-secondary" %}
|
7
|
+
{%- endif -%}
|
8
|
+
|
9
|
+
{%- if include.right_style_dark != false -%}
|
10
|
+
{% assign right_div_style = "text-bg-dark" %}
|
11
|
+
{% assign right_button_style = "btn-outline-light" %}
|
12
|
+
{%- else -%}
|
13
|
+
{% assign right_div_style = "bg-light border" %}
|
14
|
+
{% assign right_button_style = "btn-outline-secondary" %}
|
15
|
+
{%- endif -%}
|
16
|
+
|
17
|
+
<!-- BEGIN Jumbotron Split -->
|
18
|
+
<div class="row align-items-md-stretch jumbotron-split px-4 my-5">
|
19
|
+
<div class="col-md-6">
|
20
|
+
<div class="h-100 p-5 rounded-3 {{ left_div_style }}">
|
21
|
+
{%- if include.left_title -%}
|
22
|
+
<h2>{{ include.left_title }}</h2>
|
23
|
+
{%- endif -%}
|
24
|
+
{%- if include.left_body -%}
|
25
|
+
<div class="mb-3">{{ include.left_body }}</div>
|
26
|
+
{%- endif -%}
|
27
|
+
{%- if include.left_link_text -%}
|
28
|
+
<button class="btn {{ left_button_style }}" type="button" onclick="window.location.href='{{ include.left_link_url }}';">{{ include.left_link_text }}</button>
|
29
|
+
{%- endif -%}
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
<div class="col-md-6">
|
33
|
+
<div class="h-100 p-5 rounded-3 {{ right_div_style }}">
|
34
|
+
{%- if include.right_title -%}
|
35
|
+
<h2>{{ include.right_title }}</h2>
|
36
|
+
{%- endif -%}
|
37
|
+
{%- if include.right_body -%}
|
38
|
+
<div class="mb-3">{{ include.right_body }}</div>
|
39
|
+
{%- endif -%}
|
40
|
+
{%- if include.right_link_text -%}
|
41
|
+
<button class="btn {{ right_button_style }}" type="button" onclick="window.location.href='{{ include.right_link_url }}';">{{ include.right_link_text }}</button>
|
42
|
+
{%- endif -%}
|
43
|
+
</div>
|
44
|
+
</div>
|
45
|
+
</div>
|
46
|
+
<!-- END Jumbotron Split -->
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<!-- BEGIN categories listing -->
|
2
|
+
{% capture categories %}{% for category in site.categories %}{{ category | first }}{% unless forloop.last %},{% endunless %}{% endfor %}{% endcapture %}
|
3
|
+
{% assign categories_list = categories | split:',' | sort_natural %}
|
4
|
+
<h3>Categories</h3>
|
5
|
+
<ul id="category-list" class="entry-meta inline-list">
|
6
|
+
{% for category in (0..site.categories.size) %}
|
7
|
+
{% unless forloop.last %}
|
8
|
+
{% capture category_name %}{{ categories_list[category] | strip_newlines }}{% endcapture %}
|
9
|
+
<li>
|
10
|
+
<a href="/categories/#{{ category_name | slugify }}"><span class="category-name">{{ category_name }}</span></a>
|
11
|
+
<span class="category-count">({{ site.categories[category_name].size }})</span>
|
12
|
+
</li>
|
13
|
+
{% endunless %}
|
14
|
+
{% endfor %}
|
15
|
+
</ul>
|
16
|
+
<!-- END categories listing -->
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<footer class="d-flex flex-wrap justify-content-between align-items-center py-3 my-4 border-top">
|
2
|
+
{% include footer_custom.html %}
|
3
|
+
<div class="col-md-4 d-flex align-items-center">
|
4
|
+
<a href="/" class="mb-3 me-2 mb-md-0 text-muted text-decoration-none lh-1">
|
5
|
+
{%- if site.jekyll-twitter-bootstrap.logo.footer -%}
|
6
|
+
{{ site.jekyll-twitter-bootstrap.logo.footer }}
|
7
|
+
{%- else -%}
|
8
|
+
<svg class="bi" width="30" height="24"><use xlink:href="/assets/svg/bootstrap-icons.svg#bootstrap"/></svg>
|
9
|
+
{%- endif -%}
|
10
|
+
</a>
|
11
|
+
{%- assign copyright_year = 'now' | date: "%Y" -%}
|
12
|
+
{%- if site.jekyll-twitter-bootstrap.copyright_year_start -%}
|
13
|
+
{%- assign copyright_year = site.jekyll-twitter-bootstrap.copyright_year_start | append: "-" | append: copyright_year -%}
|
14
|
+
{%- endif -%}
|
15
|
+
<span class="mb-3 mb-md-0 text-muted">© {{ copyright_year }} {{ site.title | escape }}</span>
|
16
|
+
</div>
|
17
|
+
{%- if titles_size > 0 -%}
|
18
|
+
<ul class="nav col-md-4 justify-content-end list-unstyled d-flex">
|
19
|
+
{%- for path in page_paths -%}
|
20
|
+
{%- assign this_page = site.pages | where: "path", path | first -%}
|
21
|
+
{%- if this_page.title -%}
|
22
|
+
{%- if this_page.url == page.url -%}
|
23
|
+
{% assign class = 'text-decoration-underline' %}
|
24
|
+
{% assign aria = 'aria-current="page"' %}
|
25
|
+
{%- endif -%}
|
26
|
+
<li class="nav-item"><a href="{{ this_page.url | relative_url }}" class="nav-link px-2 text-muted {{ class }}" {{ aria }}>{{ this_page.title | escape }}</a></li>
|
27
|
+
{% assign class = nil %}
|
28
|
+
{% assign aria = nil %}
|
29
|
+
{%- endif -%}
|
30
|
+
{%- endfor -%}
|
31
|
+
</ul>
|
32
|
+
{%- endif -%}
|
33
|
+
</footer>
|
File without changes
|
@@ -0,0 +1,13 @@
|
|
1
|
+
{%- if site.google_analytics_tracking_id and page.ga_do_not_track != true -%}
|
2
|
+
<!-- BEGIN Google Analytics -->
|
3
|
+
<!-- Google tag (gtag.js) -->
|
4
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics_tracking_id }}"></script>
|
5
|
+
<script>
|
6
|
+
window.dataLayer = window.dataLayer || [];
|
7
|
+
function gtag(){dataLayer.push(arguments);}
|
8
|
+
gtag('js', new Date());
|
9
|
+
|
10
|
+
gtag('config', '{{ site.google_analytics_tracking_id }}');
|
11
|
+
</script>
|
12
|
+
<!-- END Google Analytics -->
|
13
|
+
{%- endif -%}
|
data/_includes/head.html
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
<meta charset="utf-8">
|
2
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
3
|
+
<meta name="description" content="{{ site.description }}">
|
4
|
+
<meta name="author" content="{{ site.author.name }}">
|
5
|
+
<title>{{ page.title }} | {{ site.title }}</title>
|
6
|
+
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
|
7
|
+
<link href="/assets/css/styles.css" rel="stylesheet">
|
8
|
+
<!-- BEGIN Favicons -->
|
9
|
+
<link rel="apple-touch-icon" href="/assets/images/favicons/apple-touch-icon.png" sizes="180x180">
|
10
|
+
<link rel="icon" href="/assets/images/favicons/favicon-32x32.png" sizes="32x32" type="image/png">
|
11
|
+
<link rel="icon" href="/assets/images/favicons/favicon-16x16.png" sizes="16x16" type="image/png">
|
12
|
+
<link rel="mask-icon" href="/assets/images/favicons/safari-pinned-tab.svg" color="#712cf9">
|
13
|
+
<link rel="icon" href="/assets/images/favicons/favicon.ico">
|
14
|
+
<!-- END Favicons -->
|
15
|
+
{% include google_analytics.html %}
|
16
|
+
{% include head_custom.html %}
|
File without changes
|
@@ -0,0 +1,30 @@
|
|
1
|
+
{%- assign default_paths = site.pages | map: "path" -%}
|
2
|
+
{%- assign page_paths = site.header_pages | default: default_paths -%}
|
3
|
+
{%- assign titles_size = site.pages | map: 'title' | join: '' | size -%}
|
4
|
+
<header class="d-flex flex-wrap justify-content-center py-3 mb-4 border-bottom">
|
5
|
+
<a href="{{ "/" | relative_url }}" class="d-flex align-items-center mb-3 mb-md-0 me-md-auto text-dark text-decoration-none">
|
6
|
+
{%- if site.jekyll-twitter-bootstrap.logo.header -%}
|
7
|
+
{{ site.jekyll-twitter-bootstrap.logo.header }}
|
8
|
+
{%- else -%}
|
9
|
+
<svg class="bi me-2" width="40" height="32"><use xlink:href="/assets/svg/bootstrap.svg#bootstrap"/></svg>
|
10
|
+
{%- endif -%}
|
11
|
+
<span class="fs-4">{{ site.title | escape }}</span>
|
12
|
+
</a>
|
13
|
+
{%- if titles_size > 0 -%}
|
14
|
+
<ul class="nav nav-pills">
|
15
|
+
{%- for path in page_paths -%}
|
16
|
+
{%- assign this_page = site.pages | where: "path", path | first -%}
|
17
|
+
{%- if this_page.title -%}
|
18
|
+
{%- if this_page.url == page.url -%}
|
19
|
+
{% assign class = 'active' %}
|
20
|
+
{% assign aria = 'aria-current="page"' %}
|
21
|
+
{%- endif -%}
|
22
|
+
<li class="nav-item"><a href="{{ this_page.url | relative_url }}" class="nav-link {{ class }}" {{ aria }}>{{ this_page.title | escape }}</a></li>
|
23
|
+
{% assign class = nil %}
|
24
|
+
{% assign aria = nil %}
|
25
|
+
{%- endif -%}
|
26
|
+
{%- endfor -%}
|
27
|
+
</ul>
|
28
|
+
{%- endif -%}
|
29
|
+
{% include header_custom.html %}
|
30
|
+
</header>
|
File without changes
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<!-- BEGIN post listings by categories -->
|
2
|
+
{%- assign date_format = site.jekyll-twitter-bootstrap.date_format | default: "%B %e, %Y at %l:%M%p" -%}
|
3
|
+
{% for category in site.categories %}
|
4
|
+
<h3><a name="{{ category[0] | slugify }}"></a>{{ category[0] }}</h3>
|
5
|
+
<ul class="list-unstyled">
|
6
|
+
{% for post in category[1] %}
|
7
|
+
<li class="ms-3">
|
8
|
+
<h4 class="fs-5 mb-1"><a href="{{ post.url }}">{{ post.title }}</a></h4>
|
9
|
+
<p class="fst-italic lh-sm">{{ post.date | date: date_format }}</p>
|
10
|
+
</li>
|
11
|
+
{% endfor %}
|
12
|
+
</ul>
|
13
|
+
{% endfor %}
|
14
|
+
<!-- END post listings by categories -->
|
@@ -0,0 +1,22 @@
|
|
1
|
+
<!-- BEGIN post listings by latest, count -->
|
2
|
+
{%- assign date_format = site.jekyll-twitter-bootstrap.date_format | default: "%B %e, %Y at %l:%M%p" -%}
|
3
|
+
{% assign posts = site.posts %}
|
4
|
+
{%- if posts.size > 0 -%}
|
5
|
+
<ul class="list-unstyled">
|
6
|
+
{% for post in posts limit:include.posts_count | sort: 'date' | reverse %}
|
7
|
+
<li class="mb-5">
|
8
|
+
<h4 class="fs-5 mb-1"><a href="{{ post.url }}">{{ post.title }}</a></h4>
|
9
|
+
<p class="fst-italic lh-sm">{{ post.date | date: date_format }}</p>
|
10
|
+
<div>
|
11
|
+
{%- if site.show_excerpts -%}
|
12
|
+
{{ post.excerpt }}
|
13
|
+
{%- endif -%}
|
14
|
+
</div>
|
15
|
+
<div>
|
16
|
+
<p><a href="{{ post.url | relative_url }}" class="fst-italic">Continue reading...</a></p>
|
17
|
+
</div>
|
18
|
+
</li>
|
19
|
+
{% endfor %}
|
20
|
+
</ul>
|
21
|
+
{% endif %}
|
22
|
+
<!-- END post listings by latest, count -->
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<!-- BEGIN post listings by tags -->
|
2
|
+
{%- assign date_format = site.jekyll-twitter-bootstrap.date_format | default: "%B %e, %Y at %l:%M%p" -%}
|
3
|
+
{% for tag in site.tags %}
|
4
|
+
<h3><a name="{{ tag[0] | slugify }}"></a>{{ tag[0] }}</h3>
|
5
|
+
<ul class="list-unstyled">
|
6
|
+
{% for post in tag[1] %}
|
7
|
+
<li class="ms-3">
|
8
|
+
<h4 class="fs-5 mb-1"><a href="{{ post.url }}">{{ post.title }}</a></h4>
|
9
|
+
<p class="fst-italic lh-sm">{{ post.date | date: date_format }}</p>
|
10
|
+
</li>
|
11
|
+
{% endfor %}
|
12
|
+
</ul>
|
13
|
+
{% endfor %}
|
14
|
+
<!-- END post listings by tags -->
|
data/_includes/tags.html
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
<!-- BEGIN tags listing -->
|
2
|
+
{% capture tags %}{% for tag in site.tags %}{{ tag | first }}{% unless forloop.last %},{% endunless %}{% endfor %}{% endcapture %}
|
3
|
+
{% assign tags_list = tags | split:',' | sort_natural %}
|
4
|
+
<h3>Tags</h3>
|
5
|
+
<ul id="tag-list" class="entry-meta inline-list">
|
6
|
+
{% for tag in (0..site.tags.size) %}
|
7
|
+
{% unless forloop.last %}
|
8
|
+
{% capture tag_name %}{{ tags_list[tag] | strip_newlines }}{% endcapture %}
|
9
|
+
<li>
|
10
|
+
<a href="/tags/#{{ tag_name | slugify }}"><span class="tag-name">{{ tag_name }}</span></a>
|
11
|
+
<span class="tag-count">({{ site.tags[tag_name].size }})</span>
|
12
|
+
</li>
|
13
|
+
{% endunless %}
|
14
|
+
{% endfor %}
|
15
|
+
</ul>
|
16
|
+
<!-- END tags listing -->
|
data/_layouts/base.html
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html lang="en">
|
3
|
+
<head>
|
4
|
+
{% include head.html %}
|
5
|
+
</head>
|
6
|
+
<body>
|
7
|
+
<div class="container">
|
8
|
+
{% include header.html %}
|
9
|
+
<main>
|
10
|
+
{{ content }}
|
11
|
+
</main>
|
12
|
+
{% include footer.html %}
|
13
|
+
</div>
|
14
|
+
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.bundle.min.js" integrity="sha384-w76AqPfDkMBDXo30jS1Sgez6pr3x5MlQ1ZAGC+nuZB+EYdgRZgiwxhTBTkF7CXvN" crossorigin="anonymous"></script>
|
15
|
+
</body>
|
16
|
+
</html>
|
data/_layouts/blog.html
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
---
|
2
|
+
layout: page_sidebar
|
3
|
+
---
|
4
|
+
|
5
|
+
{{ content }}
|
6
|
+
<!-- BEGIN Main blog content -->
|
7
|
+
{% if site.paginate %}
|
8
|
+
{% assign posts = paginator.posts %}
|
9
|
+
{% else %}
|
10
|
+
{% assign posts = site.posts %}
|
11
|
+
{% endif %}
|
12
|
+
{%- if posts.size > 0 -%}
|
13
|
+
{%- assign date_format = site.jekyll-twitter-bootstrap.date_format | default: "%B %e, %Y at %l:%M%p" -%}
|
14
|
+
{%- for post in posts -%}
|
15
|
+
<!-- BEGIN Blog post -->
|
16
|
+
<article class="blog-post mb-5">
|
17
|
+
<h2 class="blog-post-title mb-1"><a href="{{ post.url | relative_url }}"
|
18
|
+
class="text-decoration-none">{{ post.title | escape }}</a></h2>
|
19
|
+
<p class="blog-post-meta">
|
20
|
+
<time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}"
|
21
|
+
itemprop="datePublished">{{ post.date | date: date_format }}</time> by
|
22
|
+
{%- if post.author -%}
|
23
|
+
{% for author in post.author %}
|
24
|
+
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
|
25
|
+
<span class="p-author h-card" itemprop="name">{{ author }}</span></span>
|
26
|
+
{%- if forloop.last == false %}, {% endif -%}
|
27
|
+
{% endfor %}
|
28
|
+
{%- endif -%}
|
29
|
+
{%- if post.categories or post.category -%}
|
30
|
+
<span class="blog-category-spacer mx-2">|</span>
|
31
|
+
{%- endif -%}
|
32
|
+
{%- if post.categories -%}
|
33
|
+
{% for category in post.categories %}
|
34
|
+
<a href="/categories/#{{ category | slugify }}">{{ category }}</a>
|
35
|
+
{%- if forloop.last == false %}, {% endif -%}
|
36
|
+
{% endfor %}
|
37
|
+
{%- elsif post.category -%}
|
38
|
+
<a href="/categories/#{{ post.category | slugify }}">{{ post.category }}</a>
|
39
|
+
{%- endif -%}
|
40
|
+
<div>
|
41
|
+
{%- if site.show_excerpts -%}
|
42
|
+
{{ post.excerpt }}
|
43
|
+
{%- endif -%}
|
44
|
+
</div>
|
45
|
+
<div>
|
46
|
+
<p><a href="{{ post.url | relative_url }}" class="fst-italic">Continue reading...</a></p>
|
47
|
+
</div>
|
48
|
+
<div itemprop="keywords">
|
49
|
+
{%- if post.tags -%}
|
50
|
+
{% for tag in post.tags %}
|
51
|
+
<a href="/tags/#{{ tag | slugify }}">{{ tag }}</a>
|
52
|
+
{%- if forloop.last == false %}, {% endif -%}
|
53
|
+
{% endfor %}
|
54
|
+
{%- endif -%}
|
55
|
+
</div>
|
56
|
+
</article>
|
57
|
+
{%- endfor -%}
|
58
|
+
<!-- END Blog post -->
|
59
|
+
{% if site.paginate %}
|
60
|
+
<!-- BEGIN Paging -->
|
61
|
+
<nav class="blog-pagination" aria-label="Pagination">
|
62
|
+
{%- if paginator.previous_page %}
|
63
|
+
<a class="btn btn-outline-primary rounded-pill"
|
64
|
+
href="{{ paginator.previous_page_path | relative_url }}">Newer</a>
|
65
|
+
{%- endif %}
|
66
|
+
{%- if paginator.next_page %}
|
67
|
+
<a class="btn btn-outline-primary rounded-pill"
|
68
|
+
href="{{ paginator.next_page_path | relative_url }}">Older</a>
|
69
|
+
{%- endif %}
|
70
|
+
</nav>
|
71
|
+
<!-- END Paging -->
|
72
|
+
{%- endif %}
|
73
|
+
{%- endif -%}
|