minimal-categorized 0.0.9 → 0.0.14
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 +4 -4
- data/README.md +6 -2
- data/_data/menu.yml +10 -2
- data/_data/metaData.yml +7 -1
- data/_includes/avatar.html +5 -0
- data/_includes/cookies.js +29 -0
- data/_includes/{home.js → gate.js} +2 -2
- data/_includes/menu.html +47 -48
- data/_layouts/default.html +5 -0
- data/_layouts/gate.html +35 -0
- data/_layouts/home.html +33 -33
- data/_layouts/post.html +3 -1
- data/_sass/styles/_avatar.scss +16 -0
- data/_sass/styles/_category-aggregator.scss +5 -5
- data/_sass/styles/_cookies.scss +53 -0
- data/_sass/styles/_defaults.scss +9 -4
- data/_sass/styles/_gate.scss +64 -0
- data/_sass/styles/_home.scss +91 -40
- data/_sass/styles/_index.scss +5 -1
- data/_sass/styles/_layout.scss +3 -1
- data/_sass/styles/_menu.scss +27 -6
- data/_sass/styles/_post.scss +11 -2
- data/_sass/styles/_profile.scss +4 -16
- data/_sass/styles/_projects-collection.scss +82 -0
- data/_sass/variables/_colors.scss +22 -11
- data/_sass/variables/_dark-theme.scss +25 -0
- data/_sass/variables/_layout.scss +2 -0
- data/_sass/variables/_light-theme.scss +17 -0
- data/assets/img/ko-fi.jpg +0 -0
- data/assets/img/project-1.png +0 -0
- data/assets/img/project-2.svg +49 -0
- data/assets/img/project-3.svg +1 -0
- data/assets/img/project-4.png +0 -0
- data/assets/styles/styles.scss +5 -1
- data/pages/about.html +1 -5
- data/pages/category-1.html +73 -1
- data/pages/gate.html +4 -0
- data/pages/super-cat.html +9 -0
- metadata +19 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 91dcd1021101ae6e6af2c48e027e14225460eca63d23bb44a56d74f9d67f31aa
|
4
|
+
data.tar.gz: 1b5bae713c662e65cd3b5d08cc5425e0acaec5ab0a1abcbc6f2b3ef783894573
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 553cc24c77e897bbffb09c7e69c7ca98cde3a9657e6626247e49143db97e726e1b8313fedc5e1e016715c55d61515823a4e361777d4980b9c3f9dd3e3e43a8ce
|
7
|
+
data.tar.gz: c2a833c592d1faf4cae5ce6d431ff6aa8c7cd296a78fdd37b0662f5f71cedd9800a391f20439c53ec7640d80e8285d170254b23bb368407fc75a31c960e1d5fa
|
data/README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
[](https://raw.githubusercontent.com/mmistakes/minimal-mistakes/master/LICENSE)
|
4
4
|
[](https://jekyllrb.com/)
|
5
|
-
[](https://badge.fury.io/rb/minimal-categorized)
|
6
6
|
|
7
7
|
minimal-categorized is a flexible Jekyll theme, designed for sites with content easily aggregated into categories. Demo is available [here](https://itsmeaga1n.github.io/minimal-categorized/).
|
8
8
|
|
@@ -40,7 +40,7 @@ Structure of `_data/menu.yml`:
|
|
40
40
|
* menu_title: Displayed on menu (only for normal menu)
|
41
41
|
* menu_headline: Displayed in menu (only for normal menu) and in about page
|
42
42
|
* menu_intro: Displayed in menu (only for normal menu) and in about page
|
43
|
-
*
|
43
|
+
* show_menu_on_gate_page: Boolean value determining if menu should be visible on category selection page
|
44
44
|
* minimal_menu: Boolean value determining the style of menu bar
|
45
45
|
* menu_logo: Path to logo displayed on menu (only for normal menu)
|
46
46
|
* menu_pages: a list of items in menu. Each item contains information:
|
@@ -55,6 +55,10 @@ Structure of `_data/menu.yml`:
|
|
55
55
|
* faicon: FavIcon to be displayed in menu
|
56
56
|
* url: URL for href
|
57
57
|
* target: target value of \<a> tag
|
58
|
+
* cookies: customize information about site cookies
|
59
|
+
* enabled: determine if should show cookies pop-up
|
60
|
+
* message: text on cookie pop-up
|
61
|
+
* agreeButtonText: text on agree button
|
58
62
|
|
59
63
|
Structure of `_data/metaData.yml`:
|
60
64
|
author: Site Author name
|
data/_data/menu.yml
CHANGED
@@ -1,11 +1,17 @@
|
|
1
1
|
menu_title: Example menu title
|
2
2
|
menu_headline: example menu headline
|
3
3
|
menu_intro: Hi! This is an example of intro that you could write for your jekyll minimal-categorized theme!
|
4
|
-
|
4
|
+
show_menu_on_gate_page: False
|
5
5
|
minimal_menu: True
|
6
6
|
menu_logo: assets/img/avatar.png
|
7
7
|
|
8
8
|
menu_pages:
|
9
|
+
- title: Home
|
10
|
+
url: /
|
11
|
+
show_on_home: False
|
12
|
+
icon_name: fas fa-home
|
13
|
+
category: home
|
14
|
+
|
9
15
|
- title: Category 1
|
10
16
|
url: /category-1.html
|
11
17
|
show_on_home: True
|
@@ -13,6 +19,7 @@ menu_pages:
|
|
13
19
|
icon_name: fas fa-dice
|
14
20
|
category: category-1
|
15
21
|
tooltip: This is category 1
|
22
|
+
description: Category 1 description, which is written in menu.yml file under :description property
|
16
23
|
|
17
24
|
- title: Category 2
|
18
25
|
url: /category-2.html
|
@@ -21,8 +28,9 @@ menu_pages:
|
|
21
28
|
icon_name: fas fa-cogs
|
22
29
|
category: category-2
|
23
30
|
tooltip: This is category 2
|
31
|
+
description: Category 2 description, which is written in menu.yml file under :description property
|
24
32
|
|
25
|
-
- title:
|
33
|
+
- title: About
|
26
34
|
url: about.html
|
27
35
|
show_on_home: False
|
28
36
|
icon_name: fas fa-address-card
|
data/_data/metaData.yml
CHANGED
@@ -1,2 +1,8 @@
|
|
1
1
|
author: Site Author
|
2
|
-
avatar_url: assets/img/avatar.png
|
2
|
+
avatar_url: assets/img/avatar.png
|
3
|
+
lightTheme: False
|
4
|
+
show_menu_logo_on_home_page: True
|
5
|
+
cookies:
|
6
|
+
enabled: True
|
7
|
+
message: This site might be using cookies! Customize your message or disable cookies in metaData.yml!
|
8
|
+
agreeButtonText: Agree
|
@@ -0,0 +1,29 @@
|
|
1
|
+
(function() {
|
2
|
+
const consentPropName = "cookies_consent";
|
3
|
+
const storageType = localStorage;
|
4
|
+
|
5
|
+
shouldShowCookieConsent = () => !storageType.getItem(consentPropName);
|
6
|
+
acceptCookieConsent = () => storageType.setItem(consentPropName, true);
|
7
|
+
window.addEventListener("load", () => {
|
8
|
+
if(!shouldShowCookieConsent()) {
|
9
|
+
return;
|
10
|
+
}
|
11
|
+
const cookieContainer = document.createElement("div");
|
12
|
+
cookieContainer.classList.add("hidden");
|
13
|
+
const cookieParagraph = document.createElement("p");
|
14
|
+
const cookieContent = document.createTextNode("{{ site.data.metaData.cookies.message }}");
|
15
|
+
const cookieAgreeButton = document.createElement("button");
|
16
|
+
const cookieButtonContent = document.createTextNode("{{ site.data.metaData.cookies.agreeButtonText }}");
|
17
|
+
cookieAgreeButton.appendChild(cookieButtonContent);
|
18
|
+
cookieAgreeButton.onclick = () => {
|
19
|
+
acceptCookieConsent();
|
20
|
+
cookieContainer.classList.add("hidden");
|
21
|
+
window.setTimeout(cookieContainer.remove.bind(cookieContainer), 1000);
|
22
|
+
}
|
23
|
+
cookieParagraph.append(cookieContent);
|
24
|
+
cookieContainer.append(cookieParagraph, cookieAgreeButton);
|
25
|
+
cookieContainer.classList.add("cookie-container")
|
26
|
+
document.body.appendChild(cookieContainer);
|
27
|
+
window.setTimeout(() => cookieContainer.classList.remove("hidden"));
|
28
|
+
});
|
29
|
+
})();
|
data/_includes/menu.html
CHANGED
@@ -1,62 +1,61 @@
|
|
1
1
|
{% if site.data.menu.minimal_menu %}
|
2
|
-
<aside class="menu">
|
3
|
-
|
2
|
+
<aside class="menu">
|
3
|
+
<div class="menu-top">
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
5
|
+
<ul class="navigation">
|
6
|
+
{% for menu_item in site.data.menu.menu_pages %}
|
7
|
+
<li>
|
8
|
+
<a href="{{ menu_item.url | relative_url }}" category="{{ menu_item.category }}" title="{{ menu_item.tooltip }}">
|
9
|
+
<i class="{{ menu_item.icon_name }}"> </i>
|
10
|
+
</a>
|
11
|
+
</li>
|
12
|
+
{% endfor %}
|
13
|
+
</ul>
|
14
|
+
</div>
|
15
|
+
<div class="menu-contact">
|
16
|
+
{% for contact in site.data.menu.menu_contacts %}
|
17
|
+
<a href="{{ contact.url | relative_url }}" target="{{ contact.target }}">
|
18
|
+
<i class="{{ contact.faicon }}"></i>
|
10
19
|
</a>
|
11
|
-
</li>
|
12
20
|
{% endfor %}
|
13
|
-
</
|
14
|
-
</
|
15
|
-
<div class="menu-contact">
|
16
|
-
{% for contact in site.data.menu.menu_contacts %}
|
17
|
-
|
18
|
-
<a href="{{ contact.url | relative_url }}" target="{{ contact.target }}">
|
19
|
-
<i class="{{ contact.faicon }}"></i>
|
20
|
-
</a>
|
21
|
-
{% endfor %}
|
22
|
-
</div>
|
23
|
-
</aside>
|
21
|
+
</div>
|
22
|
+
</aside>
|
24
23
|
|
25
24
|
{% else %}
|
26
25
|
|
27
|
-
<aside class="menu">
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
26
|
+
<aside class="menu">
|
27
|
+
<div class="menu-top">
|
28
|
+
<div class="profile">
|
29
|
+
<div class="avatar">
|
30
|
+
<a href="{{ '/about.html' | relative_url }}" alt="avatar">
|
31
|
+
<img src="{{ site.data.menu.menu_logo | relative_url }}" alt="avatar" onerror="this.style.display='none'">
|
32
|
+
</a>
|
33
|
+
</div>
|
34
|
+
<h1>{{ site.data.menu.menu_title }}</h1>
|
35
|
+
<h2>{{ site.data.menu.menu_headline }}</h2>
|
36
|
+
<p>{{ site.data.menu.menu_intro }}</p>
|
34
37
|
</div>
|
35
|
-
|
36
|
-
<
|
37
|
-
|
38
|
+
|
39
|
+
<ul class="navigation">
|
40
|
+
{% for menu_item in site.data.menu.menu_pages %}
|
41
|
+
<li>
|
42
|
+
<a href="{{ menu_item.url | relative_url }}" category="{{ menu_item.category }}" title="{{ menu_item.tooltip }}">
|
43
|
+
<i class="{{ menu_item.icon_name }}"> </i>
|
44
|
+
<span>{{ menu_item.title }}</span>
|
45
|
+
</a>
|
46
|
+
</li>
|
47
|
+
{% endfor %}
|
48
|
+
</ul>
|
38
49
|
</div>
|
50
|
+
<div class="menu-contact">
|
51
|
+
{% for contact in site.data.menu.menu_contacts %}
|
39
52
|
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
<a href="{{ menu_item.url | relative_url }}" category="{{ menu_item.category }}" title="{{ menu_item.tooltip }}">
|
44
|
-
<i class="{{ menu_item.icon_name }}"> </i>
|
45
|
-
<span>{{ menu_item.title }}</span>
|
46
|
-
</a>
|
47
|
-
</li>
|
53
|
+
<a href="{{ contact.url | relative_url }}" target="{{ contact.target }}">
|
54
|
+
<i class="{{ contact.faicon }}"></i>
|
55
|
+
</a>
|
48
56
|
{% endfor %}
|
49
|
-
</
|
50
|
-
</
|
51
|
-
<div class="menu-contact">
|
52
|
-
{% for contact in site.data.menu.menu_contacts %}
|
53
|
-
|
54
|
-
<a href="{{ contact.url | relative_url }}" target="{{ contact.target }}">
|
55
|
-
<i class="{{ contact.faicon }}"></i>
|
56
|
-
</a>
|
57
|
-
{% endfor %}
|
58
|
-
</div>
|
59
|
-
</aside>
|
57
|
+
</div>
|
58
|
+
</aside>
|
60
59
|
{% endif %}
|
61
60
|
|
62
61
|
<script>
|
data/_layouts/default.html
CHANGED
data/_layouts/gate.html
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
{% include common-head.html %}
|
5
|
+
<script>
|
6
|
+
{% include gate.js %}
|
7
|
+
</script>
|
8
|
+
</head>
|
9
|
+
{% if site.data.menu.minimal_menu and site.data.menu.show_menu_on_gate_page %}
|
10
|
+
<body class="is-minimal-menu" >
|
11
|
+
{% else %}
|
12
|
+
<body>
|
13
|
+
{% endif %}
|
14
|
+
{% if site.data.menu.show_menu_on_gate_page %}
|
15
|
+
{% include menu.html %}
|
16
|
+
<main class="content-layout">
|
17
|
+
{% else %}
|
18
|
+
<main class="content-layout no-menu">
|
19
|
+
{% endif %}
|
20
|
+
<div class="gate">
|
21
|
+
{% for menu_item in site.data.menu.menu_pages %}
|
22
|
+
{% if menu_item.show_on_home %}
|
23
|
+
<a href="{{ menu_item.url | relative_url }}" class="category-container">
|
24
|
+
<div class="category" style="background-image: url('{{ menu_item.image_url | relative_url}}')"></div>
|
25
|
+
<p>
|
26
|
+
{{ menu_item.title }}
|
27
|
+
</p>
|
28
|
+
</a>
|
29
|
+
{% endif %}
|
30
|
+
{% endfor %}
|
31
|
+
</div>
|
32
|
+
</main>
|
33
|
+
</body>
|
34
|
+
</html>
|
35
|
+
|
data/_layouts/home.html
CHANGED
@@ -1,35 +1,35 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
<body class="is-minimal-menu" >
|
11
|
-
{% else %}
|
12
|
-
<body>
|
13
|
-
{% endif %}
|
14
|
-
{% if site.data.menu.show_menu_on_category_select %}
|
15
|
-
{% include menu.html %}
|
16
|
-
<main class="content-layout">
|
17
|
-
{% else %}
|
18
|
-
<main class="content-layout no-menu">
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
category: home
|
4
|
+
---
|
5
|
+
<div class="content-container home">
|
6
|
+
|
7
|
+
<h1>
|
8
|
+
{% if site.data.metaData.show_menu_logo_on_home_page %}
|
9
|
+
{% include avatar.html %}
|
19
10
|
{% endif %}
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
11
|
+
{{ page.title }}
|
12
|
+
</h1>
|
13
|
+
<p class="page-summary">{{ page.summary }}</p>
|
14
|
+
<div class="category_wrapper">
|
15
|
+
{% for menu_item in site.data.menu.menu_pages %}
|
16
|
+
{% if menu_item.show_on_home %}
|
17
|
+
<div class="category_container">
|
18
|
+
<div class="category_image">
|
19
|
+
<a href="{{ menu_item.url | relative_url }}">
|
20
|
+
<img class="category" src="{{ menu_item.image_url | relative_url}}">
|
28
21
|
</a>
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
22
|
+
</div>
|
23
|
+
<div class="category_description">
|
24
|
+
<a href="{{ menu_item.url | relative_url }}">
|
25
|
+
<h2> {{ menu_item.title }} </h2>
|
26
|
+
</a>
|
27
|
+
<p>
|
28
|
+
{{ menu_item.description }}
|
29
|
+
</p>
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
{% endif %}
|
33
|
+
{% endfor %}
|
34
|
+
</div>
|
35
|
+
</div>
|
data/_layouts/post.html
CHANGED
@@ -0,0 +1,16 @@
|
|
1
|
+
.avatar {
|
2
|
+
&_container {
|
3
|
+
justify-content: center!important;
|
4
|
+
display: flex;
|
5
|
+
}
|
6
|
+
display: block;
|
7
|
+
width: $avatar-dim;
|
8
|
+
height: $avatar-dim;
|
9
|
+
border-radius: 50%;
|
10
|
+
border: 2px solid $p_light;
|
11
|
+
overflow: hidden;
|
12
|
+
img {
|
13
|
+
height: $avatar-dim;
|
14
|
+
width: $avatar-dim;
|
15
|
+
}
|
16
|
+
}
|
@@ -1,16 +1,16 @@
|
|
1
1
|
.category-aggregator {
|
2
|
-
color: $
|
2
|
+
color: $p_text;
|
3
3
|
a {
|
4
|
-
color: $
|
4
|
+
color: $p_text;
|
5
5
|
&:hover {
|
6
|
-
color:
|
6
|
+
color: $primary;
|
7
7
|
}
|
8
8
|
}
|
9
9
|
hr {
|
10
10
|
border: 0;
|
11
11
|
height: 0;
|
12
12
|
border-top: 1px solid rgba(0, 0, 0, 0.1);
|
13
|
-
border-bottom: 1px solid
|
13
|
+
border-bottom: 1px solid $p_text_dimmed;
|
14
14
|
margin: $gap auto $gap * 0.5 auto;
|
15
15
|
}
|
16
16
|
article {
|
@@ -20,7 +20,7 @@
|
|
20
20
|
padding-left: 18px;
|
21
21
|
font-style: italic;
|
22
22
|
margin-top: -0.6em;
|
23
|
-
color:
|
23
|
+
color: $p_text_dimmed;
|
24
24
|
font-size: 0.9em;
|
25
25
|
}
|
26
26
|
.article-read {
|
@@ -0,0 +1,53 @@
|
|
1
|
+
.cookie-container {
|
2
|
+
position: fixed;
|
3
|
+
padding: 20px 15px;
|
4
|
+
z-index: $pop-ups-z-1;
|
5
|
+
background-image: radial-gradient(farthest-corner at 25% 0, $p_darkest, $dark);
|
6
|
+
box-shadow: 0 0 6px 0 $dark;
|
7
|
+
text-align: center;
|
8
|
+
opacity: 0.95;
|
9
|
+
-webkit-transition: opacity 800ms, visibility 800ms;
|
10
|
+
transition: opacity 800ms, visibility 800ms;
|
11
|
+
bottom: 30px;
|
12
|
+
left: 40px;
|
13
|
+
max-width: 300px;
|
14
|
+
border-radius: 3px;
|
15
|
+
border: 3px solid $dark;
|
16
|
+
|
17
|
+
p {
|
18
|
+
color: $p_text;
|
19
|
+
line-height: 1.6em;
|
20
|
+
margin-bottom: 10px;
|
21
|
+
}
|
22
|
+
&.hidden {
|
23
|
+
opacity: 0;
|
24
|
+
visibility: hidden;
|
25
|
+
}
|
26
|
+
button {
|
27
|
+
line-height: 1.4;
|
28
|
+
font-weight: 700;
|
29
|
+
display: inline-block;
|
30
|
+
padding: 10px 20px;
|
31
|
+
background-color: $p_dark;
|
32
|
+
color: $p_text;
|
33
|
+
border: none;
|
34
|
+
border-radius: 3px;
|
35
|
+
text-decoration: none;
|
36
|
+
cursor: pointer;
|
37
|
+
-webkit-transition: background-color 200ms;
|
38
|
+
transition: background-color 200ms;
|
39
|
+
&:hover {
|
40
|
+
background-color: $primary;
|
41
|
+
}
|
42
|
+
}
|
43
|
+
@include mobile {
|
44
|
+
bottom: 0;
|
45
|
+
left: 0;
|
46
|
+
width: 100%;
|
47
|
+
max-width: 100%;
|
48
|
+
padding: 12px 10px;
|
49
|
+
border-left: 0;
|
50
|
+
border-right: 0;
|
51
|
+
border-bottom: 0;
|
52
|
+
}
|
53
|
+
}
|