garth-jekyll-theme 0.5.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +34 -16
- data/_includes/post-list.html +2 -2
- data/_includes/post-meta.html +13 -1
- data/_includes/post-pagination.html +2 -2
- data/_includes/site-header.html +1 -1
- data/_includes/site-logo.html +2 -2
- data/_includes/site-nav.html +2 -2
- data/_layouts/default.html +1 -1
- data/_sass/_colors.scss +9 -8
- data/_sass/_sassline-base.scss +0 -1
- data/_sass/_theme.scss +176 -0
- data/_sass/garth.scss +11 -0
- data/_sass/sassline-base/_variables.scss +0 -12
- data/assets/logo.svg +1 -0
- data/assets/styles.scss +1 -167
- metadata +12 -9
- data/_sass/sassline-base/_layouts.scss +0 -282
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f6355c77eb1fa94debd4a1435e0ab170de6d755
|
4
|
+
data.tar.gz: 8064b1c46fd28b544b8aa4e5141a3d8ec48ec488
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1c8493c60f4ae93c9fbb52a226e0c29209264b0f39327a4c5f1e923e5d030f9920fd37346ee91b1ae7817bc3a59fa9d7d037f03bdaf0664db27e461965c06827
|
7
|
+
data.tar.gz: e4f16ec71bf64202c18749debcbb532c3d384d422c9e9769100a2fd92ade3fbf154ba4495fe2fbf234a444f775070208166cb4c4dfb928c63b48d537e5ce3300
|
data/README.md
CHANGED
@@ -3,34 +3,52 @@
|
|
3
3
|
|
4
4
|
🥁 A stupidly simple theme for Jekyll, using the official Jekyll theme implementation.
|
5
5
|
|
6
|
-
![Screenshot](https://raw.githubusercontent.com/daviddarnes/garth
|
6
|
+
![Screenshot](https://raw.githubusercontent.com/daviddarnes/garth/master/screenshot.png)
|
7
7
|
|
8
8
|
## Contents
|
9
9
|
- [Installation](#installation)
|
10
|
+
- [Customising](#customising)
|
10
11
|
- [Site settings](#site-settings)
|
11
12
|
- [Page layouts](#page-layouts)
|
12
13
|
- [Credits](#credits)
|
13
14
|
|
14
15
|
## Installation
|
15
16
|
|
16
|
-
### As a
|
17
|
+
### As a Jekyll theme
|
17
18
|
|
18
|
-
1.
|
19
|
-
2.
|
20
|
-
3.
|
21
|
-
4.
|
22
|
-
5.
|
23
|
-
6. Install gems with `$ bundle install`
|
24
|
-
7. Run Jekyll with `$ bundle exec jekyll serve --watch`
|
25
|
-
8. Begin hacking for your project
|
19
|
+
1. Add `gem "garth-jekyll-theme"` to your `Gemfile` to add the theme as a dependancy
|
20
|
+
2. Run the command `bundle install` in the root of project to install the theme and its dependancies
|
21
|
+
3. Add `theme: garth-jekyll-theme` to your `_config.yml` file to set the site theme
|
22
|
+
4. Run `bundle exec jekyll serve` to build and serve your site
|
23
|
+
5. Done! Use the example [`_config.yml`](https://github.com/daviddarnes/garth/blob/master/_config.yml) file to set site-wide options
|
26
24
|
|
27
|
-
### As a
|
25
|
+
### As a GitHub Pages remote theme
|
28
26
|
|
29
|
-
1.
|
30
|
-
2.
|
31
|
-
3.
|
32
|
-
4.
|
33
|
-
5.
|
27
|
+
1. Add `gem "jekyll-remote-theme"` to your `Gemfile` to add the theme as a dependancy
|
28
|
+
2. Run the command `bundle install` in the root of project to install the jekyll remote theme gem as a dependancy
|
29
|
+
3. Add `jekyll-remote-theme` to the list of `plugins` in your `_config.yml` file
|
30
|
+
4. Add `remote_theme: daviddarnes/garth` to your `_config.yml` file to set the site theme
|
31
|
+
5. Run `bundle exec jekyll serve` to build and serve your site
|
32
|
+
6. Done! Use the example [`_config.yml`](https://github.com/daviddarnes/garth/blob/master/_config.yml) file to set site-wide options
|
33
|
+
|
34
|
+
### As a Boilerplate / Fork
|
35
|
+
|
36
|
+
_(deprecated, not recommended)_
|
37
|
+
|
38
|
+
1. [Fork the repo](https://github.com/daviddarnes/garth#fork-destination-box)
|
39
|
+
2. Replace the `Gemfile` with one stating all the gems used in your project
|
40
|
+
3. Delete the following unnecessary files/folders: `CODE_OF_CONDUCT.md`, `CONTRIBUTING.md`, `LICENSE`, `screenshot.png`, `CNAME` and `garth-jekyll-theme.gemspec`
|
41
|
+
4. Run the command `bundle install` in the root of project to install the jekyll remote theme gem as a dependancy
|
42
|
+
5. Run `bundle exec jekyll serve` to build and serve your site
|
43
|
+
6. Done! Use the example [`_config.yml`](https://github.com/daviddarnes/garth/blob/master/_config.yml) file to set site-wide options
|
44
|
+
|
45
|
+
## Customising
|
46
|
+
|
47
|
+
When using Garth as a theme means you can take advantage of the file overriding method. This allows you to overwrite any file in this theme with your own custom file, simply by matching the file name and path. The most common example of this would be if you want to add your own styles or change the core style settings.
|
48
|
+
|
49
|
+
To add your own styles copy the [`styles.scss`](https://github.com/daviddarnes/garth/blob/master/assets/styles.scss) into your own project with the same file path (`assets/styles.scss`). From there you can add your own styles, you can even optionally ignore the theme styles by removing the `@import "garth";` line.
|
50
|
+
|
51
|
+
If you're just looking to set your own colours copy the [`_colors.scss`](https://github.com/daviddarnes/garth/blob/master/_sass/_colors.scss) file into your project at the same file path (`_sass/_settings.scss`) and change variables however you wish. The settings are a mixture of custom variables and settings from [Sassline](https://medium.com/@jakegiltsoff/sassline-v2-0-e424b2881e7e) - follow the link to find out how to configure the typographic settings.
|
34
52
|
|
35
53
|
## Site settings
|
36
54
|
|
data/_includes/post-list.html
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
<li class="item item--post">
|
6
6
|
<article class="article article--post typeset">
|
7
7
|
|
8
|
-
<h2><a href="{{
|
8
|
+
<h2><a href="{{ site.baseurl }}{{ page.url }}">{{ page.title }}</a></h2>
|
9
9
|
{% include post-meta.html %}
|
10
10
|
{{ page.excerpt | markdownify | truncatewords: 60 }}
|
11
11
|
|
@@ -22,7 +22,7 @@
|
|
22
22
|
<li class="item item--post">
|
23
23
|
<article class="article article--post typeset">
|
24
24
|
|
25
|
-
<h2><a href="{{
|
25
|
+
<h2><a href="{{ site.baseurl }}{{ page.url }}">{{ page.title }}</a></h2>
|
26
26
|
{% include post-meta.html %}
|
27
27
|
{{ page.excerpt | markdownify | truncatewords: 60 }}
|
28
28
|
|
data/_includes/post-meta.html
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
{% if page.categories %}
|
2
|
+
{% capture categories %}
|
3
|
+
{% for category in page.categories %}
|
4
|
+
<span class="label label--category">{{ category }}</span>{% if forloop.last == false %},{% endif %}
|
5
|
+
{% endfor %}
|
6
|
+
{% endcapture %}
|
7
|
+
{% elsif page.category %}
|
8
|
+
{% capture categories %}
|
9
|
+
<span class="label label--category">{{ page.category }}</span>
|
10
|
+
{% endcapture %}
|
11
|
+
{% endif %}
|
12
|
+
|
1
13
|
<small class="small post-meta">
|
2
|
-
{
|
14
|
+
{{ categories | append: " · " }}<time datetime="{{ page.date | date_to_xmlschema }}" class="time">{{ page.date | date_to_string }}</time>
|
3
15
|
</small>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<nav class="nav nav--paginator">
|
2
2
|
|
3
3
|
{% if paginator.previous_page %}
|
4
|
-
<a href="{{ paginator.previous_page_path }}" class="pagination pagination--previous">← Previous</a>
|
4
|
+
<a href="{{ site.baseurl }}{{ paginator.previous_page_path }}" class="pagination pagination--previous">← Previous</a>
|
5
5
|
{% else %}
|
6
6
|
<span class="pagination pagination--previous">← Previous</span>
|
7
7
|
{% endif %}
|
@@ -9,7 +9,7 @@
|
|
9
9
|
<span class="pagination pagination--counter">Page: {{ paginator.page }} of {{ paginator.total_pages }}</span>
|
10
10
|
|
11
11
|
{% if paginator.next_page %}
|
12
|
-
<a href="{{ paginator.next_page_path }}" class="pagination pagination--next">Next →</a>
|
12
|
+
<a href="{{ site.baseurl }}{{ paginator.next_page_path }}" class="pagination pagination--next">Next →</a>
|
13
13
|
{% else %}
|
14
14
|
<span class="pagination pagination--next">Next →</span>
|
15
15
|
{% endif %}
|
data/_includes/site-header.html
CHANGED
data/_includes/site-logo.html
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
<a class="logo" href="{{ site.
|
2
|
-
<img src="{{ site.logo }}" alt="{{ site.title }} logo"/>
|
1
|
+
<a class="logo" href="{{ site.baseurl }}/">
|
2
|
+
<img src="{{ site.baseurl }}{{ site.logo }}" alt="{{ site.title }} logo"/>
|
3
3
|
</a>
|
data/_includes/site-nav.html
CHANGED
@@ -5,9 +5,9 @@
|
|
5
5
|
<li class="item item--nav{% if item.url == page.url %} item--current{% endif %}">
|
6
6
|
{% if item.collectionpage %}
|
7
7
|
{% assign collectiondata = site.collections | where: "label", item.collectionpage | first %}
|
8
|
-
<a href="{{ item.url }}">{{ collectiondata.title }}</a>
|
8
|
+
<a href="{{ site.baseurl }}{{ item.url }}">{{ collectiondata.title }}</a>
|
9
9
|
{% else %}
|
10
|
-
<a href="{{ item.url }}">{{ item.title }}</a>
|
10
|
+
<a href="{{ site.baseurl }}{{ item.url }}">{{ item.title }}</a>
|
11
11
|
{% endif %}
|
12
12
|
</li>
|
13
13
|
{% endunless %}
|
data/_layouts/default.html
CHANGED
data/_sass/_colors.scss
CHANGED
@@ -1,9 +1,10 @@
|
|
1
1
|
// Colours
|
2
|
-
$
|
3
|
-
$
|
4
|
-
$
|
5
|
-
$
|
6
|
-
$
|
7
|
-
$
|
8
|
-
|
9
|
-
$
|
2
|
+
$bodyColour: #46412A;
|
3
|
+
$headingColour: darken($bodyColour, 5%);
|
4
|
+
$linkColour: #5B5BFF;
|
5
|
+
$hoverColour: darken($linkColour, 10%);
|
6
|
+
$captionColour: lighten($headingColour, 40%);
|
7
|
+
$white: #fff;
|
8
|
+
|
9
|
+
$backgroundColour: #ffefc8;
|
10
|
+
$codeBackgroundColour: darken($backgroundColour, 5%);
|
data/_sass/_sassline-base.scss
CHANGED
data/_sass/_theme.scss
ADDED
@@ -0,0 +1,176 @@
|
|
1
|
+
// Structural elements
|
2
|
+
body {
|
3
|
+
background: $backgroundColour;
|
4
|
+
color: $bodyColour;
|
5
|
+
height: 100%;
|
6
|
+
display: flex;
|
7
|
+
@include flex-direction(column);
|
8
|
+
overflow-x: hidden;
|
9
|
+
}
|
10
|
+
|
11
|
+
.container {
|
12
|
+
width: 90%;
|
13
|
+
max-width: 900px;
|
14
|
+
margin: 0 auto;
|
15
|
+
}
|
16
|
+
|
17
|
+
|
18
|
+
// Header, feature and footer
|
19
|
+
.header,
|
20
|
+
.footer {
|
21
|
+
.container {
|
22
|
+
padding: 1rem 0;
|
23
|
+
@include flexbox;
|
24
|
+
@include flex-direction(column);
|
25
|
+
@include align-items(center);
|
26
|
+
text-align: center;
|
27
|
+
}
|
28
|
+
@include breakpoint(break-1) {
|
29
|
+
.container {
|
30
|
+
@include flex-direction(row);
|
31
|
+
@include justify-content(space-between);
|
32
|
+
text-align: inherit;
|
33
|
+
}
|
34
|
+
}
|
35
|
+
}
|
36
|
+
|
37
|
+
.header {
|
38
|
+
@include flex(0, 0, auto);
|
39
|
+
background: darken($backgroundColour, 10%);
|
40
|
+
}
|
41
|
+
|
42
|
+
.logo {
|
43
|
+
display: inline-block;
|
44
|
+
line-height: 0;
|
45
|
+
border-radius: 100%;
|
46
|
+
overflow: hidden;
|
47
|
+
img {
|
48
|
+
width: 4rem;
|
49
|
+
height: 4rem;
|
50
|
+
}
|
51
|
+
}
|
52
|
+
|
53
|
+
.small {
|
54
|
+
padding-top: .6rem;
|
55
|
+
color: $captionColour;
|
56
|
+
display: inline-block;
|
57
|
+
}
|
58
|
+
|
59
|
+
.footer {
|
60
|
+
border-top: 1px solid darken($backgroundColour, 15%);
|
61
|
+
}
|
62
|
+
|
63
|
+
|
64
|
+
// Nav and copyright
|
65
|
+
.nav {
|
66
|
+
&--paginator {
|
67
|
+
@include flexbox;
|
68
|
+
@include justify-content(center);
|
69
|
+
color: $captionColour;
|
70
|
+
text-align: center;
|
71
|
+
}
|
72
|
+
}
|
73
|
+
|
74
|
+
.pagination {
|
75
|
+
margin: 0 1rem;
|
76
|
+
}
|
77
|
+
|
78
|
+
|
79
|
+
// Main content
|
80
|
+
.main {
|
81
|
+
@include flexbox;
|
82
|
+
@include flex-direction(column);
|
83
|
+
@include flex(1, 0, auto);
|
84
|
+
margin-bottom: 1.6rem;
|
85
|
+
@include breakpoint(break-1) {
|
86
|
+
@include flex-direction(row);
|
87
|
+
}
|
88
|
+
}
|
89
|
+
|
90
|
+
|
91
|
+
// Lists
|
92
|
+
.list {
|
93
|
+
&--posts {
|
94
|
+
list-style: none;
|
95
|
+
}
|
96
|
+
&--nav {
|
97
|
+
list-style: none;
|
98
|
+
}
|
99
|
+
.item--post {
|
100
|
+
margin-left: 0;
|
101
|
+
}
|
102
|
+
}
|
103
|
+
|
104
|
+
.item {
|
105
|
+
&--nav {
|
106
|
+
display: inline-block;
|
107
|
+
margin-left: 1rem;
|
108
|
+
&:first-of-type {
|
109
|
+
margin-left: 0;
|
110
|
+
}
|
111
|
+
}
|
112
|
+
&--current {
|
113
|
+
a {
|
114
|
+
color: desaturate($linkColour, 100%);
|
115
|
+
}
|
116
|
+
}
|
117
|
+
}
|
118
|
+
|
119
|
+
|
120
|
+
// Images and media elements
|
121
|
+
img {
|
122
|
+
max-width: 100%;
|
123
|
+
height: auto;
|
124
|
+
}
|
125
|
+
|
126
|
+
audio,
|
127
|
+
video {
|
128
|
+
width: 100%;
|
129
|
+
}
|
130
|
+
|
131
|
+
|
132
|
+
// Text selection
|
133
|
+
::selection {
|
134
|
+
background: $headingColour;
|
135
|
+
color: $white;
|
136
|
+
text-shadow: none;
|
137
|
+
}
|
138
|
+
|
139
|
+
|
140
|
+
// Sassline overrides
|
141
|
+
.typeset {
|
142
|
+
a > code {
|
143
|
+
text-shadow: none;
|
144
|
+
}
|
145
|
+
.button,
|
146
|
+
button {
|
147
|
+
background-image: none;
|
148
|
+
text-shadow: none;
|
149
|
+
color: $backgroundColour;
|
150
|
+
&:hover,
|
151
|
+
&:active,
|
152
|
+
&:focus {
|
153
|
+
background-image: none;
|
154
|
+
color: $backgroundColour;
|
155
|
+
}
|
156
|
+
}
|
157
|
+
hr {
|
158
|
+
width: 100%;
|
159
|
+
}
|
160
|
+
li {
|
161
|
+
> p {
|
162
|
+
padding: 0;
|
163
|
+
margin: 0;
|
164
|
+
}
|
165
|
+
}
|
166
|
+
.nav a {
|
167
|
+
padding-left: 0;
|
168
|
+
padding-right: 0;
|
169
|
+
margin-left: .2rem;
|
170
|
+
margin-right: .2rem;
|
171
|
+
}
|
172
|
+
pre {
|
173
|
+
white-space: pre;
|
174
|
+
overflow-x: scroll;
|
175
|
+
}
|
176
|
+
}
|
data/_sass/garth.scss
ADDED
@@ -94,15 +94,3 @@ $white: #FFFFFF !default;
|
|
94
94
|
// Background colours.
|
95
95
|
$backgroundColour: #FCFCFC !default;
|
96
96
|
$codeBackgroundColour: #F5F4F2 !default;
|
97
|
-
|
98
|
-
|
99
|
-
// Alembic reassigned variables
|
100
|
-
$headingColour: $color__site--heading;
|
101
|
-
$bodyColour: $color__site--body;
|
102
|
-
$linkColour: $color__site--link;
|
103
|
-
$hoverColour: $color__site--link--hover;
|
104
|
-
$captionColour: $color__site--captions;
|
105
|
-
$white: #fff;
|
106
|
-
|
107
|
-
$backgroundColour: $color__site--background;
|
108
|
-
$codeBackgroundColour: darken($color__site--background, 5%);
|
data/assets/logo.svg
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 42 42"><g fill="none" fill-rule="evenodd"><path fill="#8549FC" fill-rule="nonzero" d="M11 16.21V26c.4.31 1.1.64 1.99.93A27.1 27.1 0 0 0 21 28c3.08 0 5.95-.4 8.01-1.07A7.1 7.1 0 0 0 31 26v-9.79C28.85 17.3 25.17 18 21 18s-7.85-.71-10-1.79zM33 14v12c0 2.2-5.37 4-12 4S9 28.2 9 26V14c0-2.2 5.37-4 12-4s12 1.8 12 4zm-3.99-.93A27.1 27.1 0 0 0 21 12c-3.08 0-5.95.4-8.01 1.07-.9.3-1.58.62-1.99.93.4.31 1.1.64 1.99.93A27.1 27.1 0 0 0 21 16c3.08 0 5.95-.4 8.01-1.07A7.1 7.1 0 0 0 31 14a7.1 7.1 0 0 0-1.99-.93zM15 24.5a1 1 0 0 1-2 0v-5a1 1 0 0 1 2 0v5zm7 1a1 1 0 0 1-2 0v-5a1 1 0 0 1 2 0v5zm7-1a1 1 0 0 1-2 0v-5a1 1 0 0 1 2 0v5z"/><rect width="42" height="42"/></g></svg>
|
data/assets/styles.scss
CHANGED
@@ -2,170 +2,4 @@
|
|
2
2
|
title: false
|
3
3
|
---
|
4
4
|
|
5
|
-
|
6
|
-
// Frameworks & Imports
|
7
|
-
@charset "utf-8";
|
8
|
-
@import "colors.scss";
|
9
|
-
@import "normalize";
|
10
|
-
@import "sassline-base";
|
11
|
-
@import "syntax";
|
12
|
-
@import "flex";
|
13
|
-
|
14
|
-
|
15
|
-
// Structural elements
|
16
|
-
body {
|
17
|
-
background: $color__site--background;
|
18
|
-
color: $color__site--body;
|
19
|
-
height: 100%;
|
20
|
-
display: flex;
|
21
|
-
@include flex-direction(column);
|
22
|
-
overflow-x: hidden;
|
23
|
-
}
|
24
|
-
|
25
|
-
.container {
|
26
|
-
width: 90%;
|
27
|
-
max-width: 900px;
|
28
|
-
margin: 0 auto;
|
29
|
-
}
|
30
|
-
|
31
|
-
|
32
|
-
// Header, feature and footer
|
33
|
-
.header,
|
34
|
-
.footer {
|
35
|
-
.container {
|
36
|
-
padding: 1rem 0;
|
37
|
-
@include flexbox;
|
38
|
-
@include flex-direction(column);
|
39
|
-
@include align-items(center);
|
40
|
-
text-align: center;
|
41
|
-
}
|
42
|
-
@include breakpoint(break-1) {
|
43
|
-
.container {
|
44
|
-
@include flex-direction(row);
|
45
|
-
@include justify-content(space-between);
|
46
|
-
text-align: inherit;
|
47
|
-
}
|
48
|
-
}
|
49
|
-
}
|
50
|
-
|
51
|
-
.header {
|
52
|
-
@include flex(0, 0, auto);
|
53
|
-
background: darken($color__site--background, 10%);
|
54
|
-
}
|
55
|
-
|
56
|
-
.logo {
|
57
|
-
display: inline-block;
|
58
|
-
line-height: 0;
|
59
|
-
border-radius: 100%;
|
60
|
-
overflow: hidden;
|
61
|
-
img {
|
62
|
-
width: 4rem;
|
63
|
-
height: 4rem;
|
64
|
-
}
|
65
|
-
}
|
66
|
-
|
67
|
-
.small {
|
68
|
-
padding-top: .6rem;
|
69
|
-
color: $color__site--captions;
|
70
|
-
display: inline-block;
|
71
|
-
}
|
72
|
-
|
73
|
-
.footer {
|
74
|
-
border-top: 1px solid darken($color__site--background, 15%);
|
75
|
-
}
|
76
|
-
|
77
|
-
|
78
|
-
// Nav and copyright
|
79
|
-
.nav {
|
80
|
-
&--paginator {
|
81
|
-
@include flexbox;
|
82
|
-
@include justify-content(center);
|
83
|
-
color: $color__site--captions;
|
84
|
-
text-align: center;
|
85
|
-
}
|
86
|
-
}
|
87
|
-
|
88
|
-
.pagination {
|
89
|
-
margin: 0 1rem;
|
90
|
-
}
|
91
|
-
|
92
|
-
|
93
|
-
// Main content
|
94
|
-
.main {
|
95
|
-
@include flexbox;
|
96
|
-
@include flex-direction(column);
|
97
|
-
@include flex(1, 0, auto);
|
98
|
-
margin-bottom: 1.6rem;
|
99
|
-
@include breakpoint(break-1) {
|
100
|
-
@include flex-direction(row);
|
101
|
-
}
|
102
|
-
}
|
103
|
-
|
104
|
-
|
105
|
-
// Lists
|
106
|
-
.list {
|
107
|
-
&--posts {
|
108
|
-
list-style: none;
|
109
|
-
}
|
110
|
-
&--nav {
|
111
|
-
list-style: none;
|
112
|
-
}
|
113
|
-
.item--post {
|
114
|
-
margin-left: 0;
|
115
|
-
}
|
116
|
-
}
|
117
|
-
|
118
|
-
.item {
|
119
|
-
&--nav {
|
120
|
-
display: inline-block;
|
121
|
-
margin-left: 1rem;
|
122
|
-
&:first-of-type {
|
123
|
-
margin-left: 0;
|
124
|
-
}
|
125
|
-
}
|
126
|
-
&--current {
|
127
|
-
a {
|
128
|
-
color: $color__site--link--current;
|
129
|
-
}
|
130
|
-
}
|
131
|
-
}
|
132
|
-
|
133
|
-
|
134
|
-
// Images and media elements
|
135
|
-
img {
|
136
|
-
max-width: 100%;
|
137
|
-
height: auto;
|
138
|
-
}
|
139
|
-
|
140
|
-
audio,
|
141
|
-
video {
|
142
|
-
width: 100%;
|
143
|
-
}
|
144
|
-
|
145
|
-
|
146
|
-
// Text selection
|
147
|
-
::selection {
|
148
|
-
background: $color__site--heading;
|
149
|
-
color: $color__site--background;
|
150
|
-
text-shadow: none;
|
151
|
-
}
|
152
|
-
|
153
|
-
|
154
|
-
// Sassline overrides
|
155
|
-
.typeset {
|
156
|
-
.button,
|
157
|
-
button {
|
158
|
-
background-image: none;
|
159
|
-
text-shadow: none;
|
160
|
-
color: lighten(invert($color__site--body), 15%);
|
161
|
-
&:hover,
|
162
|
-
&:active,
|
163
|
-
&:focus {
|
164
|
-
background-image: none;
|
165
|
-
color: lighten(invert($color__site--body), 15%);
|
166
|
-
}
|
167
|
-
}
|
168
|
-
hr {
|
169
|
-
width: 100%;
|
170
|
-
}
|
171
|
-
}
|
5
|
+
@import "garth";
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: garth-jekyll-theme
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Darnes
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-01-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '3.
|
19
|
+
version: '3.6'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '3.
|
26
|
+
version: '3.6'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: jekyll-paginate
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -44,14 +44,14 @@ dependencies:
|
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '1.
|
47
|
+
version: '1.14'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '1.
|
54
|
+
version: '1.14'
|
55
55
|
description: A stupidly simple theme for Jekyll, using the official Jekyll theme implementation.
|
56
56
|
email:
|
57
57
|
- me@daviddarnes.com
|
@@ -77,17 +77,20 @@ files:
|
|
77
77
|
- _sass/_normalize.scss
|
78
78
|
- _sass/_sassline-base.scss
|
79
79
|
- _sass/_syntax.scss
|
80
|
-
- _sass/
|
80
|
+
- _sass/_theme.scss
|
81
|
+
- _sass/garth.scss
|
81
82
|
- _sass/sassline-base/_mixins.scss
|
82
83
|
- _sass/sassline-base/_modular-scale.scss
|
83
84
|
- _sass/sassline-base/_reset.scss
|
84
85
|
- _sass/sassline-base/_typography.scss
|
85
86
|
- _sass/sassline-base/_variables.scss
|
87
|
+
- assets/logo.svg
|
86
88
|
- assets/styles.scss
|
87
89
|
homepage: https://garth.darn.es
|
88
90
|
licenses:
|
89
91
|
- MIT
|
90
|
-
metadata:
|
92
|
+
metadata:
|
93
|
+
plugin_type: theme
|
91
94
|
post_install_message:
|
92
95
|
rdoc_options: []
|
93
96
|
require_paths:
|
@@ -104,7 +107,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
104
107
|
version: '0'
|
105
108
|
requirements: []
|
106
109
|
rubyforge_project:
|
107
|
-
rubygems_version: 2.
|
110
|
+
rubygems_version: 2.6.8
|
108
111
|
signing_key:
|
109
112
|
specification_version: 4
|
110
113
|
summary: A stupidly simple theme for Jekyll.
|
@@ -1,282 +0,0 @@
|
|
1
|
-
// Layouts
|
2
|
-
// ---------------------------------------
|
3
|
-
|
4
|
-
// Container.
|
5
|
-
.section {
|
6
|
-
@include clearfix;
|
7
|
-
|
8
|
-
margin: 0 auto;
|
9
|
-
position: relative;
|
10
|
-
width: 94%;
|
11
|
-
|
12
|
-
@include breakpoint(break-3) {
|
13
|
-
@include maxwidth(3);
|
14
|
-
}
|
15
|
-
|
16
|
-
@include breakpoint(break-4) {
|
17
|
-
@include maxwidth(4);
|
18
|
-
}
|
19
|
-
}
|
20
|
-
|
21
|
-
// Single column (based on measure for typeset content).
|
22
|
-
.single-measure {
|
23
|
-
@include measure(all);
|
24
|
-
|
25
|
-
margin: 0 auto;
|
26
|
-
}
|
27
|
-
|
28
|
-
// Base column styles.
|
29
|
-
.column {
|
30
|
-
@include measure(0);
|
31
|
-
|
32
|
-
margin: 0 auto;
|
33
|
-
width: 100%;
|
34
|
-
|
35
|
-
@include breakpoint(break-1) {
|
36
|
-
float: left;
|
37
|
-
margin: initial;
|
38
|
-
max-width: initial;
|
39
|
-
padding-left: map-get($gutterwidths, small);
|
40
|
-
padding-right: map-get($gutterwidths, small);
|
41
|
-
}
|
42
|
-
|
43
|
-
@include breakpoint(break-3) {
|
44
|
-
padding-left: map-get($gutterwidths, medium);
|
45
|
-
padding-right: map-get($gutterwidths, medium);
|
46
|
-
}
|
47
|
-
}
|
48
|
-
|
49
|
-
// Two columns.
|
50
|
-
.column--duo {
|
51
|
-
|
52
|
-
@include breakpoint(break-1) {
|
53
|
-
width: 50%;
|
54
|
-
|
55
|
-
&:nth-of-type(2n+3) {
|
56
|
-
clear: left;
|
57
|
-
}
|
58
|
-
|
59
|
-
&:nth-of-type(n+3) {
|
60
|
-
margin-top: 3rem;
|
61
|
-
}
|
62
|
-
}
|
63
|
-
}
|
64
|
-
|
65
|
-
// Three columns.
|
66
|
-
.column--trio {
|
67
|
-
|
68
|
-
@include breakpoint(break-1) {
|
69
|
-
width: 33.333%;
|
70
|
-
|
71
|
-
&:nth-of-type(3n+4) {
|
72
|
-
clear: left;
|
73
|
-
}
|
74
|
-
|
75
|
-
&:nth-of-type(n+4) {
|
76
|
-
margin-top: 3rem;
|
77
|
-
}
|
78
|
-
}
|
79
|
-
}
|
80
|
-
|
81
|
-
// Four columns. Two at smaller breakpoints.
|
82
|
-
.column--quad {
|
83
|
-
|
84
|
-
@include breakpoint(break-1) {
|
85
|
-
width: 50%;
|
86
|
-
}
|
87
|
-
|
88
|
-
@include breakpoint(break-2) {
|
89
|
-
width: 25%;
|
90
|
-
}
|
91
|
-
}
|
92
|
-
|
93
|
-
// Two column layout with a main text column and a sidebar.
|
94
|
-
|
95
|
-
// Main column.
|
96
|
-
.column--main {
|
97
|
-
|
98
|
-
@include breakpoint(break-1) {
|
99
|
-
@include ideal-measure(1, small);
|
100
|
-
}
|
101
|
-
|
102
|
-
@include breakpoint(break-2) {
|
103
|
-
@include ideal-measure(2, small);
|
104
|
-
}
|
105
|
-
|
106
|
-
@include breakpoint(break-3) {
|
107
|
-
@include ideal-measure(3, medium);
|
108
|
-
}
|
109
|
-
|
110
|
-
@include breakpoint(break-4) {
|
111
|
-
@include ideal-measure(4, medium);
|
112
|
-
}
|
113
|
-
}
|
114
|
-
|
115
|
-
// Sidebar.
|
116
|
-
.column--sidebar {
|
117
|
-
|
118
|
-
@include breakpoint(break-1) {
|
119
|
-
@include ideal-measure(1, small, false);
|
120
|
-
|
121
|
-
padding-right: map-get($gutterwidths, medium);
|
122
|
-
}
|
123
|
-
|
124
|
-
@include breakpoint(break-2) {
|
125
|
-
@include ideal-measure(2, small, false);
|
126
|
-
}
|
127
|
-
|
128
|
-
@include breakpoint(break-3) {
|
129
|
-
@include ideal-measure(3, medium, false);
|
130
|
-
|
131
|
-
padding-right: map-get($gutterwidths, large);
|
132
|
-
}
|
133
|
-
|
134
|
-
@include breakpoint(break-4) {
|
135
|
-
@include ideal-measure(4, medium, false);
|
136
|
-
}
|
137
|
-
}
|
138
|
-
|
139
|
-
// If sidebar on the right side.
|
140
|
-
.column--main + .column--sidebar {
|
141
|
-
@include breakpoint(break-1) {
|
142
|
-
padding-left: map-get($gutterwidths, medium);
|
143
|
-
padding-right: map-get($gutterwidths, small);
|
144
|
-
}
|
145
|
-
|
146
|
-
@include breakpoint(break-3) {
|
147
|
-
padding-left: map-get($gutterwidths, large);
|
148
|
-
padding-right: map-get($gutterwidths, medium);
|
149
|
-
}
|
150
|
-
}
|
151
|
-
|
152
|
-
// Set the main text one level down in the modular scale for narrower columns.
|
153
|
-
.column--trio,
|
154
|
-
.column--quad,
|
155
|
-
.column--sidebar {
|
156
|
-
|
157
|
-
@include breakpoint(break-3) {
|
158
|
-
|
159
|
-
p {
|
160
|
-
@include sassline($fontsize: eta, $font: $bodytype, $lineheight: 2, $below: 2, $breakpoint: 3);
|
161
|
-
}
|
162
|
-
|
163
|
-
li {
|
164
|
-
@include fontsize(eta, 3);
|
165
|
-
}
|
166
|
-
}
|
167
|
-
|
168
|
-
@include breakpoint(break-4) {
|
169
|
-
|
170
|
-
p {
|
171
|
-
@include sassline($fontsize: eta, $font: $bodytype, $lineheight: 2, $below: 2, $breakpoint: 4);
|
172
|
-
}
|
173
|
-
|
174
|
-
li {
|
175
|
-
@include fontsize(eta, 4);
|
176
|
-
}
|
177
|
-
}
|
178
|
-
}
|
179
|
-
|
180
|
-
// Main column on the right with inline sidenotes.
|
181
|
-
// The sidenotes will move out the column into the sidebar position aligned to the baseline.
|
182
|
-
.column--right {
|
183
|
-
|
184
|
-
@include breakpoint(break-1) {
|
185
|
-
@include ideal-measure(1, small);
|
186
|
-
@include ideal-measure(1, small, false, margin-left);
|
187
|
-
}
|
188
|
-
|
189
|
-
@include breakpoint(break-2) {
|
190
|
-
@include ideal-measure(2, small);
|
191
|
-
@include ideal-measure(2, small, false, margin-left);
|
192
|
-
}
|
193
|
-
|
194
|
-
@include breakpoint(break-3) {
|
195
|
-
@include ideal-measure(3, medium);
|
196
|
-
@include ideal-measure(3, medium, false, margin-left);
|
197
|
-
}
|
198
|
-
|
199
|
-
@include breakpoint(break-4) {
|
200
|
-
@include ideal-measure(4, medium);
|
201
|
-
@include ideal-measure(4, medium, false, margin-left);
|
202
|
-
}
|
203
|
-
|
204
|
-
.sidenote {
|
205
|
-
|
206
|
-
@include breakpoint(break-1) {
|
207
|
-
@include ideal-measure(1, small, false);
|
208
|
-
|
209
|
-
left: 0;
|
210
|
-
padding-left: map-get($gutterwidths, small);
|
211
|
-
padding-right: map-get($gutterwidths, medium);
|
212
|
-
position: absolute;
|
213
|
-
}
|
214
|
-
|
215
|
-
@include breakpoint(break-2) {
|
216
|
-
@include ideal-measure(2, small, false);
|
217
|
-
}
|
218
|
-
|
219
|
-
@include breakpoint(break-3) {
|
220
|
-
@include ideal-measure(3, medium, false);
|
221
|
-
|
222
|
-
padding-right: map-get($gutterwidths, large);
|
223
|
-
}
|
224
|
-
|
225
|
-
@include breakpoint(break-4) {
|
226
|
-
@include ideal-measure(4, medium, false);
|
227
|
-
|
228
|
-
padding-left: map-get($gutterwidths, medium);
|
229
|
-
}
|
230
|
-
}
|
231
|
-
}
|
232
|
-
|
233
|
-
// Main column on the left with inline sidenotes.
|
234
|
-
.column--left {
|
235
|
-
|
236
|
-
@include breakpoint(break-1) {
|
237
|
-
@include ideal-measure(1, small);
|
238
|
-
}
|
239
|
-
|
240
|
-
@include breakpoint(break-2) {
|
241
|
-
@include ideal-measure(2, small);
|
242
|
-
}
|
243
|
-
|
244
|
-
@include breakpoint(break-3) {
|
245
|
-
@include ideal-measure(3, medium);
|
246
|
-
}
|
247
|
-
|
248
|
-
@include breakpoint(break-4) {
|
249
|
-
@include ideal-measure(4, medium);
|
250
|
-
}
|
251
|
-
|
252
|
-
.sidenote {
|
253
|
-
|
254
|
-
@include breakpoint(break-1) {
|
255
|
-
@include ideal-measure(1, small, false);
|
256
|
-
@include ideal-measure(1, small, true, left);
|
257
|
-
|
258
|
-
padding-left: map-get($gutterwidths, medium);
|
259
|
-
padding-right: map-get($gutterwidths, small);
|
260
|
-
position: absolute;
|
261
|
-
}
|
262
|
-
|
263
|
-
@include breakpoint(break-2) {
|
264
|
-
@include ideal-measure(2, small, false);
|
265
|
-
@include ideal-measure(2, small, true, left);
|
266
|
-
}
|
267
|
-
|
268
|
-
@include breakpoint(break-3) {
|
269
|
-
@include ideal-measure(3, medium, false);
|
270
|
-
@include ideal-measure(3, medium, true, left);
|
271
|
-
|
272
|
-
padding-left: map-get($gutterwidths, large);
|
273
|
-
}
|
274
|
-
|
275
|
-
@include breakpoint(break-4) {
|
276
|
-
@include ideal-measure(4, medium, false);
|
277
|
-
@include ideal-measure(4, medium, true, left);
|
278
|
-
|
279
|
-
padding-right: map-get($gutterwidths, medium);
|
280
|
-
}
|
281
|
-
}
|
282
|
-
}
|