coppermind 0.2.0 → 3.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/LICENSE.txt +1 -0
- data/README.md +138 -125
- data/_config.yml +17 -0
- data/_includes/archive-by-tagories.html +1 -1
- data/_includes/archive-by-years.html +1 -1
- data/_includes/footer.html +1 -1
- data/_sass/monophase/_layout.scss +3 -2
- metadata +11 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 27a360c9ee236068ab031e4da03805f93f448d8387faf8125d7732a35373a4bd
|
4
|
+
data.tar.gz: 8a85d6fb840363619fc42647bde7e3e5ff84d67623164124021c101dc57b8139
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 59d535d03bdd9d72e24ddec9b15cc9ea1898e52318b280ba7ac1975676b9a895b6b9f5a08eb3ca5c0850df7b7cdbe24d212368778948b7ba6d0dc507cef7b744
|
7
|
+
data.tar.gz: 80a6cb6bbd067e85fb2733515b58d5fc727cc9c6344088fea4366e22dd3a46beb0ac9f87002237ffd74420d8fdd800607a8770d4378fd03ec971aa86573fd94e
|
data/LICENSE.txt
CHANGED
data/README.md
CHANGED
@@ -1,59 +1,33 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
- [
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
- [Jekyll Feed](https://github.com/jekyll/jekyll-feed/)
|
21
|
-
- [Jekyll Paginate](https://github.com/jekyll/jekyll-paginate)
|
22
|
-
- [Jekyll SEO Tag](https://github.com/jekyll/jekyll-seo-tag/)
|
23
|
-
- Related posts (time-based, because Jekyll) below each post
|
24
|
-
- Dark mode, via [`prefers-color-scheme`](https://developer.mozilla.org/en-US/docs/Web/CSS/@media/prefers-color-scheme)
|
25
|
-
- Archive implemented by pure [Liquid](https://shopify.github.io/liquid/)
|
26
|
-
|
27
|
-
## Table of Contents <!-- omit in toc -->
|
28
|
-
|
29
|
-
- [Installation](#installation)
|
30
|
-
- [Usage](#usage)
|
31
|
-
- [Global Configuration](#global-configuration)
|
32
|
-
- [Post Configuration](#post-configuration)
|
33
|
-
- [Homepage](#homepage)
|
34
|
-
- [Custom Head](#custom-head)
|
35
|
-
- [Navigation](#navigation)
|
36
|
-
- [Social Links](#social-links)
|
37
|
-
- [Alert Messages](#alert-messages)
|
38
|
-
- [Alignment](#alignment)
|
39
|
-
- [Google Analytics 4](#google-analytics-4)
|
40
|
-
- [Archive](#archive)
|
41
|
-
- [Contributing](#contributing)
|
42
|
-
- [Development](#development)
|
43
|
-
- [License](#license)
|
44
|
-
|
45
|
-
## Installation
|
1
|
+
# Coppermind
|
2
|
+
|
3
|
+
Coppermind is *a one-column minimal responsive Jekyll blog theme*.
|
4
|
+
|
5
|
+
## Why Another Jekyll Theme?
|
6
|
+
|
7
|
+
The modern web is bloated and disorganised. Pages load slowly and require large, resource-hungry web browsers to acess them. The machines and networks of years ago would be entirely adequate today if the programs they run were better optimised. This project seeks to provide a simple, low-dependency framework for creation of static sites.
|
8
|
+
|
9
|
+
## About
|
10
|
+
|
11
|
+
This project:
|
12
|
+
|
13
|
+
- Is built as a theme for [Jekyll](https://jekyllrb.com)
|
14
|
+
- Was created as a fork of [Monophase](https://github.com/whk-io/monophase) with additional features, fixes, and customisations
|
15
|
+
|
16
|
+
## Installation and Initial Setup
|
17
|
+
|
18
|
+
### Adding the gem
|
19
|
+
|
46
20
|
|
47
21
|
Add this line to your Jekyll site's `Gemfile`:
|
48
22
|
|
49
23
|
```ruby
|
50
|
-
gem "
|
24
|
+
gem "coppermind"
|
51
25
|
```
|
52
26
|
|
53
27
|
And add this line to your Jekyll site's `_config.yml`:
|
54
28
|
|
55
29
|
```yaml
|
56
|
-
theme:
|
30
|
+
theme: coppermind
|
57
31
|
```
|
58
32
|
|
59
33
|
And then execute:
|
@@ -65,32 +39,87 @@ bundle
|
|
65
39
|
Or install it yourself as:
|
66
40
|
|
67
41
|
```shell
|
68
|
-
gem install
|
42
|
+
gem install coppermind
|
69
43
|
```
|
70
44
|
|
71
|
-
|
45
|
+
### The navigation bar and homepage
|
72
46
|
|
73
|
-
|
47
|
+
Before the site is fully functional, you will need to add an index.html file and navigation bar config files.
|
74
48
|
|
75
|
-
|
76
|
-
|
77
|
-
```
|
49
|
+
```html
|
50
|
+
<!-- index.html -->
|
78
51
|
|
79
|
-
|
52
|
+
---
|
53
|
+
layout: home
|
54
|
+
---
|
55
|
+
```
|
80
56
|
|
81
|
-
|
82
|
-
plugins:
|
83
|
-
- jekyll-remote-theme
|
57
|
+
To set up the navigation bar you need to specify titles and URLs in the file `_data/navigation.yml`. For example, the following will give you a navbar with an *about* page and three archive pages.
|
84
58
|
|
85
|
-
|
86
|
-
|
59
|
+
```yml
|
60
|
+
- title: About
|
61
|
+
url: /about/
|
62
|
+
- title: Archive
|
63
|
+
url: /archive/
|
64
|
+
- title: Categories
|
65
|
+
url: /categories/
|
66
|
+
```
|
67
|
+
|
68
|
+
You will also need to add markdown files corresponding to these links in the site's root directory:
|
87
69
|
|
88
|
-
|
70
|
+
```md
|
71
|
+
<!-- about.md -->
|
72
|
+
|
73
|
+
---
|
74
|
+
layout: page
|
75
|
+
title: About
|
76
|
+
permalink: /about/
|
77
|
+
---
|
78
|
+
|
79
|
+
some text
|
80
|
+
```
|
81
|
+
|
82
|
+
```md
|
83
|
+
<!-- categories.md -->
|
84
|
+
|
85
|
+
---
|
86
|
+
layout: archive
|
87
|
+
type: categories
|
88
|
+
title: Categories
|
89
|
+
permalink: /categories/
|
90
|
+
---
|
91
|
+
```
|
92
|
+
|
93
|
+
```md
|
94
|
+
<!-- tags.md -->
|
95
|
+
|
96
|
+
---
|
97
|
+
layout: archive
|
98
|
+
type: tags
|
99
|
+
title: Tags
|
100
|
+
permalink: /tags/
|
101
|
+
---
|
102
|
+
```
|
103
|
+
|
104
|
+
```md
|
105
|
+
<!-- years.md -->
|
106
|
+
|
107
|
+
---
|
108
|
+
layout: archive
|
109
|
+
type: years
|
110
|
+
title: Years
|
111
|
+
permalink: /years/
|
112
|
+
---
|
113
|
+
```
|
89
114
|
|
90
|
-
|
115
|
+
## Customisation
|
116
|
+
|
117
|
+
### Config.yml options
|
118
|
+
In addition to the standard Jekyll config.yml settings, Coppermind supports the following:
|
91
119
|
|
92
120
|
| Variable | Type | Default | Specification |
|
93
121
|
| -------- | ---- | ------- | ------------- |
|
122
|
+
| `paginate` | int | --- | The number of posts to include on the homepage |
|
94
123
|
| `title` | String | --- | The title of the website |
|
95
124
|
| `tagline` | String | --- | The tagline of the website |
|
96
125
|
| `lang` | String | `en` | The language of pages; The value can be overwritten by the `lang` variable on each page |
|
@@ -98,10 +127,34 @@ You can also install the latest code via [`jekyll-remote-theme`](https://github.
|
|
98
127
|
| `author.url` | String | --- | A URL of the website author |
|
99
128
|
| `tags_path` | String | --- | A path to the archive-by-tags page; It is used by tags on each post |
|
100
129
|
| `categories_path` | String | --- | A path to the archive-by-categories page; It is used by categories on each post |
|
101
|
-
| `disqus` | String | --- | Disqus short name |
|
102
|
-
| `google_analytics` | String | --- | Google Analytics 4 Measurement ID |
|
103
130
|
|
104
|
-
|
131
|
+
The default config is shown below:
|
132
|
+
|
133
|
+
```md
|
134
|
+
<!-- config.yml -->
|
135
|
+
|
136
|
+
title: Coppermind
|
137
|
+
tagline: Your tagline here
|
138
|
+
author:
|
139
|
+
name: Author
|
140
|
+
|
141
|
+
# Build settings
|
142
|
+
markdown: kramdown
|
143
|
+
plugins:
|
144
|
+
- jekyll-feed
|
145
|
+
- jekyll-paginate
|
146
|
+
- jekyll-seo-tag
|
147
|
+
- kramdown-parser-gfm
|
148
|
+
|
149
|
+
paginate: 2
|
150
|
+
|
151
|
+
tags_path: /tags/
|
152
|
+
categories_path: /categories/
|
153
|
+
```
|
154
|
+
|
155
|
+
### Page frontmatter
|
156
|
+
|
157
|
+
In addition to the standard Jekyll frontmatter configuration, Coppermind supports the following:
|
105
158
|
|
106
159
|
| Variable | Type | Default | Specification |
|
107
160
|
| -------- | ---- | ------- | ------------- |
|
@@ -111,85 +164,45 @@ You can also install the latest code via [`jekyll-remote-theme`](https://github.
|
|
111
164
|
| `comments` | Boolean | `true` | Does enable the Disqus comment system |
|
112
165
|
| `math` | Boolean | `false` | Does enable MathJax on this page |
|
113
166
|
|
114
|
-
|
115
|
-
|
116
|
-
You can create a homepage for your blog by setting `layout: home` in your `index.html`.
|
117
|
-
|
118
|
-
### Custom Head
|
119
|
-
|
120
|
-
Monophase leaves a placeholder to allow defining custom head. All you need to do is putting data into `_includes/custom-head.html`, and they would be automatically included in `<head>`.
|
167
|
+
A sample post is shown below:
|
121
168
|
|
122
|
-
|
169
|
+
```md
|
170
|
+
<!-- 2021-10-09-welcome-to-jekyll.markdown -->
|
123
171
|
|
124
|
-
|
172
|
+
---
|
173
|
+
layout: post
|
174
|
+
title: "Welcome to Jekyll!"
|
175
|
+
date: 2021-10-09 11:25:13 +1100
|
176
|
+
categories: jekyll update
|
177
|
+
tags: jekyll
|
178
|
+
---
|
125
179
|
|
126
|
-
|
127
|
-
- title: About
|
128
|
-
url: /about/
|
129
|
-
- title: Archive
|
130
|
-
url: /archive/
|
131
|
-
- title: Categories
|
132
|
-
url: /categories/
|
180
|
+
some text
|
133
181
|
```
|
134
182
|
|
135
|
-
###
|
183
|
+
### Homepage
|
136
184
|
|
137
|
-
|
185
|
+
You can customise the homepage by setting `layout: home` in the frontmatter in an `index.html` file in the base directory.
|
138
186
|
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
icon: fas fa-envelope
|
143
|
-
- title: Twitter
|
144
|
-
url: https://twitter.com/zivtwt
|
145
|
-
icon: fab fa-twitter
|
146
|
-
- title: GitHub
|
147
|
-
url: https://github.com/zivhub
|
148
|
-
icon: fab fa-github
|
149
|
-
```
|
187
|
+
### Custom Head
|
188
|
+
|
189
|
+
Coppermind leaves a placeholder to allow inserting custom HTML into the page head. HTML code in `_includes/custom-head.html` will be automatically included in `<head>`.
|
150
190
|
|
151
191
|
### Alert Messages
|
152
192
|
|
153
|
-
|
193
|
+
Coppermind provides some predefined classes to specify different levels of **alert messages**. In order of tone from light to heavy, they are: `message-info`, `message-warning`, and `message-danger`. You may add it to single elements like a `<p>`, or to a parent if there are multiple elements to show.
|
154
194
|
|
155
195
|
### Alignment
|
156
196
|
|
157
|
-
|
158
|
-
|
159
|
-
### Google Analytics 4
|
160
|
-
|
161
|
-
To enable [Google Analytics 4](https://support.google.com/analytics/answer/10089681?hl=en), you just need to set the [Measurement ID](https://support.google.com/analytics/answer/7372977?hl=en) in your `_config.yml`, for example,
|
162
|
-
|
163
|
-
```yml
|
164
|
-
google_analytics: G-XXXXXXX
|
165
|
-
```
|
166
|
-
|
167
|
-
### Archive
|
197
|
+
Coppermind also provides some predefined classes to specify the alignment of HTML elements—e.g. images. They are `align-center`, `align-left`, and `align-right`.
|
168
198
|
|
169
|
-
Monophase provides some built-in archive pages. It is implemented in pure Liquid. If you want to archive posts by years, you can create a page and put these code in it:
|
170
|
-
|
171
|
-
```yml
|
172
|
-
---
|
173
|
-
layout: archive
|
174
|
-
type: years
|
175
|
-
---
|
176
|
-
```
|
177
|
-
|
178
|
-
Similarly, if you want to archive posts by categories or tags, you can set the `type` property as `categories` or `tags`.
|
179
|
-
|
180
|
-
## Contributing
|
181
|
-
|
182
|
-
Bug reports and pull requests are welcome on GitHub at [https://github.com/zivhub/monophase](https://github.com/zivhub/monophase). This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
183
199
|
|
184
200
|
## Development
|
185
201
|
|
186
|
-
To set up your environment to develop this theme, run `bundle install`.
|
187
|
-
|
188
|
-
Your theme is setup just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
|
202
|
+
To set up your environment to develop this theme, run `bundle install`. This theme is setup just like a normal Jekyll site with various filler files for testing. To test the theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`.
|
189
203
|
|
190
|
-
When
|
191
|
-
To add a custom directory to your theme-gem, please edit the regexp in `monophase.gemspec` accordingly.
|
204
|
+
When a new gem version is released, only the files in specified in the gemspec regexp and tracked with Git will be bundled.
|
192
205
|
|
193
206
|
## License
|
194
207
|
|
195
|
-
The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
208
|
+
The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
|
data/_config.yml
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
title: Coppermind
|
2
|
+
tagline: Your tagline here
|
3
|
+
author:
|
4
|
+
name: Author
|
5
|
+
|
6
|
+
# Build settings
|
7
|
+
markdown: kramdown
|
8
|
+
plugins:
|
9
|
+
- jekyll-feed
|
10
|
+
- jekyll-paginate
|
11
|
+
- jekyll-seo-tag
|
12
|
+
- kramdown-parser-gfm
|
13
|
+
|
14
|
+
paginate: 2
|
15
|
+
|
16
|
+
tags_path: /tags/
|
17
|
+
categories_path: /categories/
|
data/_includes/footer.html
CHANGED
@@ -19,7 +19,7 @@
|
|
19
19
|
</p>
|
20
20
|
<p>
|
21
21
|
<small>
|
22
|
-
Powered by <a href="https://
|
22
|
+
Powered by <a href="https://github.com/JustSoval/Coppermind" target="_blank">Coppermind</a>
|
23
23
|
</small>
|
24
24
|
</p>
|
25
25
|
</div>
|
@@ -33,6 +33,7 @@
|
|
33
33
|
}
|
34
34
|
|
35
35
|
.tagline {
|
36
|
+
padding-left: var(--spacer);
|
36
37
|
opacity: .5;
|
37
38
|
}
|
38
39
|
}
|
@@ -54,12 +55,12 @@
|
|
54
55
|
|
55
56
|
&:hover,
|
56
57
|
&:focus {
|
57
|
-
text-decoration:
|
58
|
+
text-decoration: underline;
|
58
59
|
}
|
59
60
|
}
|
60
61
|
|
61
62
|
a.current {
|
62
|
-
text-decoration:
|
63
|
+
text-decoration: underline;
|
63
64
|
}
|
64
65
|
}
|
65
66
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: coppermind
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: '3.2'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
- Jesse
|
7
|
+
- Jesse Williamson
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-10-
|
11
|
+
date: 2021-10-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -16,28 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version:
|
19
|
+
version: 4.2.0
|
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:
|
26
|
+
version: 4.2.0
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: jekyll-feed
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version:
|
33
|
+
version: 0.15.1
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version:
|
40
|
+
version: 0.15.1
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: jekyll-paginate
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
61
|
+
version: 2.7.1
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version:
|
68
|
+
version: 2.7.1
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: kramdown-parser-gfm
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -89,6 +89,7 @@ extra_rdoc_files: []
|
|
89
89
|
files:
|
90
90
|
- LICENSE.txt
|
91
91
|
- README.md
|
92
|
+
- _config.yml
|
92
93
|
- _includes/archive-by-tagories.html
|
93
94
|
- _includes/archive-by-years.html
|
94
95
|
- _includes/back-to-top.html
|
@@ -133,7 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
133
134
|
- !ruby/object:Gem::Version
|
134
135
|
version: '0'
|
135
136
|
requirements: []
|
136
|
-
rubygems_version: 3.
|
137
|
+
rubygems_version: 3.2.21
|
137
138
|
signing_key:
|
138
139
|
specification_version: 4
|
139
140
|
summary: A one-column minimal responsive Jekyll blog theme
|