jekyll-theme-nixer 1.0.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: 3ae8270fd8d2943849ca6c6bbee88dbf7b8f9f4b9f6a5aa8807aa3e7fc5b5a76
4
+ data.tar.gz: 0e9c86cd4145c4574fde1800063ae91c68cd06d60c3bd5a17304560f0c80aa97
5
+ SHA512:
6
+ metadata.gz: 7a3cd881d8122075ed9170b44c0f8df92d64a1f19e7c1c734d6cc24c211f4c995c9e0f892b380dab8b67c658fe9371491e1e363a0948ea26e50774c36267515f
7
+ data.tar.gz: a06d91422167d3107e4089a6ae5d12b11375918f5ddf967e3d45910e4cc5286b09e1126d35da1838fd22b7f3f2f4cff0309a267d635ed03d8a9a28d8f4ca6306
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2023 Michael Nordmeyer
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
6
+ this software and associated documentation files (the "Software"), to deal in
7
+ the Software without restriction, including without limitation the rights to
8
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
+ the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,93 @@
1
+ # Jekyll Theme Nixer
2
+
3
+ The even more barebones cousin of the barebones [Jekyll Theme Nix](https://github.com/michaelnordmeyer/nix) for [Jekyll](https://github.com/jekyll/jekyll), which doesn't need any dependencies except `jekyll-redirect-from`, if you want to redirect pages.
4
+
5
+ Its purpose is to be a hard-core minimalistic, single-author theme while not displaying anything more than just the content of posts and a list of posts.
6
+
7
+ It also changes as little as possible from the default browser settings to improve legibility.
8
+
9
+ It is meant for people, who are aware that nobody is using RSS feeds anymore. Either because they don't know what they are or how to use them, or they replaced Google Reader with Social Media. So all visitors are coming from search engines – let's be honest, Google – and won't read other posts, unless they are linked in the post itself.
10
+
11
+ And people coming from hacker news or related sites know how to change the URL in the browser's address bar.
12
+
13
+ If you think this goes too far, use the above mentioned [Jekyll Theme Nix](https://github.com/michaelnordmeyer/nix) instead.
14
+
15
+ ## Limited Features
16
+
17
+ - Dark mode, because we want to be respectful
18
+ - Posts, but no backlink to homepage
19
+ - No Pages, except custom error pages
20
+ - No visible authors, dates, categories, or tags
21
+ - No header or footer
22
+ - No pagination for the home page
23
+ - No feed.xml
24
+ - A sitemap.xml, because search engines should index us
25
+ - No semantic info like Open Graph, Twitter cards, JSON-LD, or Microdata
26
+
27
+ ## Feature Creep and Bloat
28
+
29
+ To have titles with proper spelling in the post list, you have to have a `title` in your front matter. You can leave it out, but then some characters cannot be displayed, most notably the apostrophe (`'`) or anything, which cannot reasonably put in the post's filename.
30
+
31
+ Rest assured, this is the only bloat, as we already removed the date with the rest from the front matter, because it can reliably taken from the post's filename. And who has time to post more than once a day, anyway.
32
+
33
+ ## Minutiae
34
+
35
+ ### Default Colors
36
+
37
+ The default browser link colors don't look great, if they're inverted in dark mode, just like white is inverted to black for the background:
38
+
39
+ - Link: <span style="background-color: white; color: #0000ee">&nbsp;#0000ee&nbsp;</span>, inverted <span style="background-color: black; color: #ffff11">&nbsp;#ffff11&nbsp;</span>
40
+ - Link visited: <span style="background-color: white; color: #551a8b">&nbsp;#551a8b&nbsp;</span>, inverted <span style="background-color: black; color: #aae574">&nbsp;#aae574&nbsp;</span>
41
+
42
+ Therefore, they're set to somewhat lighter versions of the default colors.
43
+
44
+ - Link: <span style="background-color: white; color: #0000ee">&nbsp;#0000ee&nbsp;</span>, inverted <span style="background-color: black; color: lightskyblue">&nbsp;lightskyblue&nbsp;</span>
45
+ - Link visited: <span style="background-color: white; color: #551a8b">&nbsp;#551a8b&nbsp;</span>, inverted <span style="background-color: black; color: plum">&nbsp;plum&nbsp;</span>
46
+
47
+ ### Favicon
48
+
49
+ The favicon is currently `icon.webp` for the light mode, and there's also a dark variant `icon-dark.webp`.
50
+
51
+ ### Nixer?
52
+
53
+ <q>Nix</q> is the grammatically incorrect form of the German <q>nichts</q>, which in English means <q>nothing</q>. It's colloquially used to stress the nothingness. <q>Nixer</q> is the even more grammatically incorrect comparative of that, which colloquially may or may not being used at all.
54
+
55
+ Or, if you will, it could be UNIX without the <q>U</q>, because of the theme's somewhat archaic properties, but even more archaic.
56
+
57
+ ## Installation
58
+
59
+ Installation from Gem is recommended, but using a remote theme is also possible, even though it will increase build time a little, depending on your internet connection.
60
+
61
+ ### Installation from Gem
62
+
63
+ Add this line to your Jekyll site's `Gemfile`:
64
+
65
+ ```ruby
66
+ gem "jekyll-theme-nixer"
67
+ ```
68
+
69
+ And add this line to your Jekyll site's `_config.yml`:
70
+
71
+ ```yaml
72
+ theme: jekyll-theme-nixer
73
+ ```
74
+
75
+ Make sure that this is the only `theme:` in `_config.yml`.
76
+
77
+ ### Installation as Remote Theme
78
+
79
+ Add this line to your Jekyll site's `Gemfile`:
80
+
81
+ ```ruby
82
+ gem "jekyll-remote-theme"
83
+ ```
84
+
85
+ And add this line to your Jekyll site's `_config.yml`:
86
+
87
+ ```yaml
88
+ remote_theme: michaelnordmeyer/jekyll-theme-nixer
89
+ ```
90
+
91
+ Make sure that this is the only `remote_theme:` in `_config.yml`, and that there are no other `theme:`.
92
+
93
+ Finally, add `jekyll-remote-theme` to your plugin section in `_config.yml` as well.
data/_config.yml ADDED
@@ -0,0 +1,25 @@
1
+ ### Remove URL for Github Pages
2
+ url: https://jekyll-theme-nixer.michaelnordmeyer.com
3
+ title: Jekyll Theme Nixer
4
+ description: "An even more barebones theme for Jekyll"
5
+
6
+ timezone: Europe/Berlin
7
+ ignore_theme_config: true
8
+ exclude: [CNAME, Gemfile, Gemfile.lock, LICENSE, README.md]
9
+ date_format: "%Y-%m-%d"
10
+
11
+ plugins:
12
+ - jekyll-include-cache
13
+ # - jekyll-redirect-from
14
+
15
+ ## Jekyll build settings
16
+ kramdown:
17
+ show_warnings: true
18
+
19
+ permalink: /:title
20
+ defaults:
21
+ - scope:
22
+ path: ""
23
+ type: "posts"
24
+ values:
25
+ layout: "post"
@@ -0,0 +1,45 @@
1
+ <!DOCTYPE html>
2
+ <html lang="{{ page.lang | default: site.lang | default: 'en' }}">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1">
6
+ <link rel="icon" type="image/webp" href="{{ '/icon.webp' | relative_url }}">
7
+ <style>
8
+ html {
9
+ max-width: 43rem;
10
+ margin: 0 auto;
11
+ padding: 1em;
12
+ font: 1rem / 1.5 sans-serif;
13
+ }
14
+ body { margin: 0; }
15
+ img, table { margin: 0 auto; }
16
+ table { border-collapse: collapse; }
17
+ th, td { padding: 0.25em 0.5em; border-bottom: 1px solid lightgrey; }
18
+ img { display: block; max-width: 100%; height: auto; }
19
+ figure { margin: 0; text-align: center; font-size: small; }
20
+ blockquote { margin: 1em 1.5em 1em 0.5em; padding-left: 1em; border-left: 1px solid lightgrey; }
21
+ code { font-size: 1.125em; }
22
+ sub, sup { line-height: 0; }
23
+ hr { border: 0; border-top: 1px solid; }
24
+ h1 { font-size: 2rem; text-align: center; }
25
+ body > main > ul { padding: 0; }
26
+ body > main > ul > li { margin: 0.5em 0; list-style-type: none; line-height: 1.25em; }
27
+ @media (prefers-color-scheme: dark) {
28
+ html { background-color: black; color: white; }
29
+ a { color: lightskyblue; }
30
+ a:visited { color: plum; }
31
+ th, td { border-color: grey; }
32
+ }
33
+ .footnotes p { margin: 0; font-size: small; }
34
+ </style>
35
+ <meta name="theme-color" content="#white">
36
+ <title>{%- if page.title -%}{{ page.title | smartify }}{%- else -%}{{ site.title | smartify }}{%- endif -%}</title>
37
+ <meta name="description" content="{% if page.excerpt %}{{ page.excerpt | strip_html | smartify }}{% else %}{{ site.description | smartify }}{% endif %}">
38
+ <link rel="canonical" href="{{ page.url | absolute_url }}">
39
+ </head>
40
+ <body>
41
+ <main>
42
+ {{ content }}
43
+ </main>
44
+ </body>
45
+ </html>
@@ -0,0 +1,30 @@
1
+ <!DOCTYPE html>
2
+ <html lang="{{ page.lang | default: site.lang | default: 'en' }}">
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1">
6
+ <link rel="icon" type="image/webp" href="{{ '/icon.webp' | relative_url }}">
7
+ <style>
8
+ html {
9
+ max-width: 43rem;
10
+ margin: 0 auto;
11
+ padding: 1em;
12
+ font: 1rem / 1.5 sans-serif;
13
+ }
14
+ body { margin: 0; }
15
+ h1 { margin-block-start: 0.83em; margin-block-end: 0.83em; text-align: center; }
16
+ @media (prefers-color-scheme: dark) {
17
+ html { background-color: black; color: white; }
18
+ a { color: lightskyblue; }
19
+ a:visited { color: plum; }
20
+ }
21
+ </style>
22
+ <meta name="theme-color" content="#white">
23
+ <title>{%- if page.title -%}{{ page.title | smartify }}{%- else -%}{{ site.title | smartify }}{%- endif -%}</title>
24
+ <meta name="description" content="Error page">
25
+ <meta name="robots" content="noindex,follow">
26
+ </head>
27
+ <body>
28
+ <h1>{{ page.title }}</h1>
29
+ </body>
30
+ </html>
@@ -0,0 +1,10 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ {%- if site.posts.size > 0 -%}
5
+ <ul>
6
+ {%- for post in site.posts %}
7
+ <li><a href="{{ post.url | relative_url }}">{{ post.title | smartify }}</a></li>
8
+ {%- endfor %}
9
+ </ul>
10
+ {%- endif %}
@@ -0,0 +1,9 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+ <article>
5
+ <header>
6
+ <h1>{{ page.title | smartify }}</h1>
7
+ </header>
8
+ {{ content }}
9
+ </article>
metadata ADDED
@@ -0,0 +1,66 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: jekyll-theme-nixer
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Michael Nordmeyer
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2023-02-24 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.3'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '4.3'
27
+ description:
28
+ email:
29
+ - michaelnordmeyer@users.noreply.github.com
30
+ executables: []
31
+ extensions: []
32
+ extra_rdoc_files: []
33
+ files:
34
+ - LICENSE
35
+ - README.md
36
+ - _config.yml
37
+ - _layouts/default.html
38
+ - _layouts/error.html
39
+ - _layouts/home.html
40
+ - _layouts/post.html
41
+ homepage: https://github.com/michaelnordmeyer/jekyll-theme-nixer
42
+ licenses:
43
+ - MIT
44
+ metadata: {}
45
+ post_install_message:
46
+ rdoc_options: []
47
+ require_paths:
48
+ - lib
49
+ required_ruby_version: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ required_rubygems_version: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - ">="
57
+ - !ruby/object:Gem::Version
58
+ version: '0'
59
+ requirements: []
60
+ rubygems_version: 3.4.7
61
+ signing_key:
62
+ specification_version: 4
63
+ summary: A hard-core minimalistic, single-author Jekyll theme with almost default
64
+ browser styling, and a dark mode. Just a post list and posts, no menu, header, footer,
65
+ or pages. Even the backlink from posts to home is missing.
66
+ test_files: []