kids 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: ac5d5e3a434911482d5331845b2a03a8f58cd65205b656965a7fc4e0dac18fca
4
+ data.tar.gz: 7404b88a194f60f0b8a8dcd4502c19044318b41e052674b23ab4e9746e590e96
5
+ SHA512:
6
+ metadata.gz: d4e28a40d1d67c77e24133e50d3c5e492cc63563d2a3f3f9c3d515bb5e7ba0aebc752498afe6f6d21fb18af1707e86aab930e483dad656818f1a0509e5dabb18
7
+ data.tar.gz: c9662cf7a719a8d1c7aa12d3aca636aece4083549ae38fd3afc259edee14fd1f5d17209af17f58a08621e99d2986ae2c2976e6263041fda174b9ca1007192d7c
data/README.md ADDED
@@ -0,0 +1,29 @@
1
+ # Kids
2
+
3
+ Kids is a Jekyll theme.
4
+
5
+ ## Installation
6
+
7
+ To use the Kids theme:
8
+
9
+ 1. Add the following to your site's `Gemfile`:
10
+
11
+ ```ruby
12
+ gem "kids", git: "https://github.com/dirtyhenry/kids.git", branch: 'master'
13
+ ```
14
+
15
+ 1. Add the following to your site's `_config.yml`:
16
+
17
+ ```yml
18
+ theme: kids
19
+ ```
20
+
21
+ ## Contributing
22
+
23
+ Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
24
+
25
+ Please make sure to update tests as appropriate.
26
+
27
+ ## License
28
+
29
+ [MIT](https://choosealicense.com/licenses/mit/)
@@ -0,0 +1,22 @@
1
+ {%- assign page_paths = site.footer_pages | default: [] -%}
2
+
3
+ <footer>
4
+ <ul class="meta">
5
+ <li>{{ site.title | escape }}</li>
6
+ {%- if site.repository.url and site.repository.name -%}
7
+ <li><a href={{ site.repository.url }}>{{ site.repository.name }}</a></li>
8
+ {%- endif -%}
9
+ </ul>
10
+ {% if page_paths.size > 0 %}
11
+ <nav>
12
+ <ul>
13
+ {%- for path in page_paths -%}
14
+ {%- assign my_page = site.pages | where: "path", path | first -%}
15
+ {%- if my_page.title -%}
16
+ <li><a class="page-link" href="{{ my_page.url | relative_url }}">{{ my_page.title | escape }}</a></li>
17
+ {%- endif -%}
18
+ {%- endfor -%}
19
+ </ul>
20
+ </nav>
21
+ {% endif %}
22
+ </footer>
@@ -0,0 +1,9 @@
1
+ <script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
2
+ <script>
3
+ window['ga-disable-{{ site.google_analytics }}'] = window.doNotTrack === "1" || navigator.doNotTrack === "1" || navigator.doNotTrack === "yes" || navigator.msDoNotTrack === "1";
4
+ window.dataLayer = window.dataLayer || [];
5
+ function gtag(){dataLayer.push(arguments);}
6
+ gtag('js', new Date());
7
+
8
+ gtag('config', '{{ site.google_analytics }}');
9
+ </script>
@@ -0,0 +1,20 @@
1
+ <head>
2
+ <meta charset="utf-8">
3
+ <meta http-equiv="X-UA-Compatible" content="IE=edge">
4
+ <meta name="viewport" content="width=device-width, initial-scale=1">
5
+ {%- seo -%}
6
+ {%- if site.kids.webmanifest -%}
7
+ <link rel="manifest" href="{{ "/site.webmanifest" | relative_url }}">
8
+ {%- endif -%}
9
+ {%- if site.kids.apple_touch_icon -%}
10
+ <link rel="apple-touch-icon" href="{{ "/icon.png" | relative_url }}">
11
+ {%- endif -%}
12
+ <!-- Place favicon.ico in the root directory -->
13
+
14
+ <link rel="stylesheet" href="{{ "/assets/css/style.css" | relative_url }}">
15
+
16
+ {%- feed_meta -%}
17
+ {%- if jekyll.environment == 'production' and site.google_analytics -%}
18
+ {%- include google-analytics.html -%}
19
+ {%- endif -%}
20
+ </head>
@@ -0,0 +1,29 @@
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
+
5
+ <header>
6
+ <nav>
7
+ <a id="site-title" rel="author" href="{{ "/" | relative_url }}">{{ site.title | escape }}</a>
8
+ </nav>
9
+ {%- if titles_size > 0 -%}
10
+ <nav>
11
+ <ul>
12
+ {%- for path in page_paths -%}
13
+ {%- assign my_page = site.pages | where: "path", path | first -%}
14
+ {%- if my_page.nav_title or my_page.title -%}
15
+ <li>
16
+ <a class="page-link" href="{{ my_page.url | relative_url }}">
17
+ {%- if my_page.nav_title -%}
18
+ {{ my_page.nav_title | escape }}
19
+ {%- elsif my_page.title -%}
20
+ {{ my_page.title | escape }}
21
+ {%- endif -%}
22
+ </a>
23
+ </li>
24
+ {%- endif -%}
25
+ {%- endfor -%}
26
+ </ul>
27
+ </nav>
28
+ {%- endif -%}
29
+ </header>
@@ -0,0 +1,38 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <div class="home">
6
+ {%- if page.title -%}
7
+ <h1 class="page-heading">{{ page.title }}</h1>
8
+ {%- endif -%}
9
+
10
+ {%- assign posts_by_month = site.posts | group_by_exp: "item", "item.date | truncate: 7, ''" -%}
11
+
12
+ {%- if posts_by_month.size > 0 -%}
13
+ <h2 class="post-list-heading">{{ page.list_title | default: "Posts" }}</h2>
14
+ <ul class="post-list">
15
+ {%- for month in posts_by_month -%}
16
+ <li>
17
+ <h3>{{ month | append: "-01" | date: "%B %Y" }}</h3>
18
+ <ul class="post-list">
19
+ {%- for post in month.items -%}
20
+ <li>
21
+ <a class="post-link" href="{{ post.url | relative_url }}">
22
+ {{ post.title | escape }}
23
+ </a>
24
+ </li>
25
+ {%- endfor -%}
26
+ </ul>
27
+ </li>
28
+ {%- endfor -%}
29
+ </ul>
30
+
31
+ <p class="feed-subscribe">
32
+ <a href="{{ 'feed.xml' | relative_url }}">
33
+ <span>Subscribe to our feed</span>
34
+ </a>
35
+ </p>
36
+ {%- endif -%}
37
+
38
+ </div>
@@ -0,0 +1,20 @@
1
+ <!doctype html>
2
+ <html class="no-js" lang="{{ page.lang | default: site.lang | default: "en" }}">
3
+ {%- include head.html -%}
4
+ <body>
5
+ <!--[if IE]>
6
+ <p class="browserupgrade">You are using an <strong>outdated</strong> browser. Please <a href="https://browsehappy.com/">upgrade your browser</a> to improve your experience and security.</p>
7
+ <![endif]-->
8
+
9
+ {%- include header.html -%}
10
+
11
+ <main class="page-content" aria-label="Content">
12
+ <div class="wrapper">
13
+ {{ content }}
14
+ </div>
15
+ </main>
16
+
17
+ {%- include footer.html -%}
18
+
19
+ </body>
20
+ </html>
@@ -0,0 +1,50 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <div class="home">
6
+ {%- if page.title -%}
7
+ <h1 class="page-heading">{{ page.title }}</h1>
8
+ {%- endif -%}
9
+
10
+ {%- if site.posts.size > 0 -%}
11
+ <h2 class="post-list-heading">{{ page.list_title | default: "Posts" }}</h2>
12
+ <ul class="post-list">
13
+ {%- for post in site.posts limit:site.kids.home_posts -%}
14
+ {%- assign date_format = site.minima.date_format | default: "%b %-d, %Y" -%}
15
+ <li>
16
+ <article>
17
+ <div class="title-wrapper">
18
+ <h3>
19
+ <a class="post-link" href="{{ post.url | relative_url }}">
20
+ {{ post.title | escape }}
21
+ </a>
22
+ </h3>
23
+ <span class="post-meta">{{ post.date | date: date_format }}</span>
24
+ </div>
25
+ <div>
26
+ {%- if site.show_excerpts -%}
27
+ {{ post.excerpt | markdownify }}
28
+ {%- endif -%}
29
+ </div>
30
+ </article>
31
+ </li>
32
+ {%- endfor -%}
33
+ </ul>
34
+
35
+ {%- if site.posts.size > site.kids.home_posts -%}
36
+ <a href="{{ site.kids.archives_path | default: 'archives.html' | relative_url }}">
37
+ Older posts
38
+ </a>
39
+ {%- endif -%}
40
+
41
+ {{ content }}
42
+
43
+ <p class="feed-subscribe">
44
+ <a href="{{ 'feed.xml' | relative_url }}">
45
+ <span>Subscribe to our feed</span>
46
+ </a>
47
+ </p>
48
+ {%- endif -%}
49
+
50
+ </div>
@@ -0,0 +1,14 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <article class="post">
5
+
6
+ <header class="post-header">
7
+ <h1 class="post-title">{{ page.title | escape }}</h1>
8
+ </header>
9
+
10
+ <div class="post-content">
11
+ {{ content }}
12
+ </div>
13
+
14
+ </article>
@@ -0,0 +1,23 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <article class="post h-entry" itemscope itemtype="http://schema.org/BlogPosting">
5
+
6
+ <div class="post-header">
7
+ <h1 class="post-title p-name" itemprop="name headline">{{ page.title | escape }}</h1>
8
+ <p class="post-meta">
9
+ <time class="dt-published" datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">
10
+ {%- assign date_format = site.minima.date_format | default: "%b %-d, %Y" -%}
11
+ {{ page.date | date: date_format }}
12
+ </time>
13
+ {%- if page.author -%}
14
+ • <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span class="p-author h-card" itemprop="name">{{ page.author | escape }}</span></span>
15
+ {%- endif -%}</p>
16
+ </div>
17
+
18
+ <div class="post-content e-content" itemprop="articleBody">
19
+ {{ content }}
20
+ </div>
21
+
22
+ <a class="u-url" href="{{ page.url | relative_url }}" hidden></a>
23
+ </article>
@@ -0,0 +1,18 @@
1
+ body {
2
+ // Remove the default margin in browsers
3
+ margin: 0;
4
+ }
5
+
6
+ #site-title {
7
+ color: $accent-color;
8
+ font-size: 1.5rem;
9
+ font-weight: bold;
10
+ letter-spacing: -1px;
11
+
12
+ &:hover,
13
+ &:focus {
14
+ outline: 0;
15
+ color: $accent-inverted;
16
+ background-color: $accent-color;
17
+ }
18
+ }
@@ -0,0 +1,98 @@
1
+ body {
2
+ // Make sure body takes all the available vertical space
3
+ display: flex;
4
+ flex-flow: column nowrap;
5
+ min-height: 100vh;
6
+ }
7
+
8
+ header {
9
+ display: flex;
10
+ flex-flow: row wrap;
11
+ justify-content: space-between;
12
+ align-items: baseline;
13
+
14
+ @media screen and (max-width: 767px) {
15
+ flex-flow: column nowrap;
16
+ align-items: flex-start;
17
+ overflow-x: hidden;
18
+ }
19
+
20
+ nav {
21
+ ul {
22
+ list-style-type: none;
23
+ padding: 0;
24
+
25
+ // Show the list items horizontally
26
+ // with some spacing inbetween
27
+ list-style: none;
28
+ li {
29
+ display: inline-block;
30
+ margin: 0 0.8rem;
31
+
32
+ &:first-child {
33
+ margin-left: 0;
34
+ }
35
+
36
+ &:last-child {
37
+ margin-right: 0;
38
+ }
39
+ }
40
+ }
41
+ }
42
+
43
+ padding: 1em 1em 2em 1em;
44
+ }
45
+
46
+ main {
47
+ display: block;
48
+ // Take all the extra vertical space if any.
49
+ flex: 1;
50
+ // Use as much horizontal space as possible and centered.
51
+ width: 100%;
52
+ margin: 0 auto;
53
+
54
+ // Don't let the 100% width overflow on narrower devices.
55
+ box-sizing: border-box;
56
+ padding: 0 1em;
57
+
58
+ .post-list {
59
+ list-style-type: none;
60
+ padding: 0;
61
+
62
+ li {
63
+ margin-bottom: 2em;
64
+ }
65
+
66
+ article {
67
+ display: flex;
68
+ flex-flow: column nowrap;
69
+
70
+ .title-wrapper {
71
+ display: flex;
72
+ align-items: baseline;
73
+
74
+ h3 {
75
+ padding: 0;
76
+ margin: 0;
77
+ }
78
+
79
+ > * + * {
80
+ margin-left: 1em;
81
+ }
82
+ }
83
+ }
84
+ }
85
+ }
86
+
87
+ footer {
88
+ padding: 2em 1em 1em 1em;
89
+
90
+ display: flex;
91
+ flex-flow: row wrap;
92
+ justify-content: space-between;
93
+
94
+ ul {
95
+ list-style-type: none;
96
+ padding: 0;
97
+ }
98
+ }
@@ -0,0 +1,26 @@
1
+ a {
2
+ &:link {
3
+ color: inherit;
4
+ text-decoration-color: $accent-color;
5
+ text-decoration-line: underline;
6
+ text-underline-position: under;
7
+ }
8
+
9
+ &:visited {
10
+ color: inherit;
11
+ text-decoration-color: $accent-color;
12
+ text-decoration-line: underline;
13
+ }
14
+
15
+ &:hover,
16
+ &:focus {
17
+ outline: 0;
18
+ color: $accent-inverted;
19
+ background-color: $accent-color;
20
+ padding: 8px;
21
+ margin: -8px;
22
+ transform: rotate(45deg);
23
+ }
24
+
25
+ &:active { color: $accent-inverted-active; }
26
+ }
@@ -0,0 +1,72 @@
1
+ html {
2
+ color: $text-color;
3
+ font-family: "Inter", -apple-system, sans-serif;
4
+ font-size: 100%;
5
+ line-height: 1.42;
6
+
7
+ @media (min-width: 1024px) {
8
+ font-size: 137.5%; // 22 px
9
+ }
10
+ }
11
+
12
+ main {
13
+ max-width: 42em;
14
+ hyphens: auto;
15
+
16
+ .post-header {
17
+ margin-bottom: 1em;
18
+ }
19
+
20
+ p {
21
+ margin: 0 auto;
22
+ }
23
+
24
+ p + p {
25
+ text-indent: 1em;
26
+ }
27
+
28
+ blockquote p {
29
+ hanging-punctuation: first;
30
+ }
31
+
32
+ li + li {
33
+ margin-top: 0.5em;
34
+ }
35
+
36
+ @media (min-width: 1024px) {
37
+ ul,
38
+ ol {
39
+ padding-left: 0;
40
+ list-style-position: outside;
41
+ }
42
+ }
43
+ }
44
+
45
+ h1,
46
+ h2,
47
+ h3 {
48
+ font-weight: 700;
49
+ letter-spacing: -0.02em;
50
+ }
51
+
52
+ h1 {
53
+ font-size: 200%;
54
+ margin-top: 1em;
55
+ margin-bottom: 0.5em;
56
+ }
57
+
58
+ h2 {
59
+ font-size: 150%;
60
+ margin-top: 1em;
61
+ margin-bottom: 0.5em;
62
+ }
63
+
64
+ h3 {
65
+ font-size: 125%;
66
+ margin-top: 1em;
67
+ margin-bottom: 0.5em;
68
+ }
69
+
70
+ footer {
71
+ font-size: 68.75%;
72
+ }
data/_sass/kids.scss ADDED
@@ -0,0 +1,10 @@
1
+ @charset "utf-8";
2
+
3
+ // Define defaults for each variable.
4
+ $text-color: #333;
5
+ $accent-color: #0d9;
6
+ $accent-inverted: #fff;
7
+ $accent-inverted-active: #ccc;
8
+
9
+ // Import partials.
10
+ @import "kids/base", "kids/layout", "kids/links", "kids/typography";
@@ -0,0 +1,5 @@
1
+ ---
2
+ # Only the main Sass file needs front matter (the dashes are enough)
3
+ ---
4
+
5
+ @import "kids";
metadata ADDED
@@ -0,0 +1,136 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: kids
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Mick F
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-02-01 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: jekyll
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '4.0'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '5.0'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '4.0'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '5.0'
33
+ - !ruby/object:Gem::Dependency
34
+ name: jekyll-feed
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '0.9'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.9'
47
+ - !ruby/object:Gem::Dependency
48
+ name: jekyll-seo-tag
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '2.1'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '2.1'
61
+ - !ruby/object:Gem::Dependency
62
+ name: jekyll-commonmark
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '1.3'
68
+ type: :runtime
69
+ prerelease: false
70
+ version_requirements: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - "~>"
73
+ - !ruby/object:Gem::Version
74
+ version: '1.3'
75
+ - !ruby/object:Gem::Dependency
76
+ name: bundler
77
+ requirement: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ type: :development
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ description:
90
+ email:
91
+ - mick@mickf.net
92
+ executables: []
93
+ extensions: []
94
+ extra_rdoc_files: []
95
+ files:
96
+ - README.md
97
+ - _includes/footer.html
98
+ - _includes/google-analytics.html
99
+ - _includes/head.html
100
+ - _includes/header.html
101
+ - _layouts/archives.html
102
+ - _layouts/default.html
103
+ - _layouts/home.html
104
+ - _layouts/page.html
105
+ - _layouts/post.html
106
+ - _sass/kids.scss
107
+ - _sass/kids/_base.scss
108
+ - _sass/kids/_layout.scss
109
+ - _sass/kids/_links.scss
110
+ - _sass/kids/_typography.scss
111
+ - assets/css/style.scss
112
+ homepage: https://github.com/dirtyhenry/kids
113
+ licenses:
114
+ - MIT
115
+ metadata:
116
+ plugin_type: theme
117
+ post_install_message:
118
+ rdoc_options: []
119
+ require_paths:
120
+ - lib
121
+ required_ruby_version: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - ">="
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
126
+ required_rubygems_version: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ requirements: []
132
+ rubygems_version: 3.0.4
133
+ signing_key:
134
+ specification_version: 4
135
+ summary: A theme for Jekyll.
136
+ test_files: []