minimal-categorized 0.0.9 → 0.0.14
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
[![LICENSE](https://img.shields.io/badge/license-MIT-lightgrey.svg)](https://raw.githubusercontent.com/mmistakes/minimal-mistakes/master/LICENSE)
|
4
4
|
[![Jekyll](https://img.shields.io/badge/jekyll-%3E%3D%203.9-blue.svg)](https://jekyllrb.com/)
|
5
|
-
[![
|
5
|
+
[![Gem Version](https://badge.fury.io/rb/minimal-categorized.svg)](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
|
+
}
|