jekyll-theme-elementary-blog 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. checksums.yaml +4 -4
  2. data/.editorconfig +12 -0
  3. data/.github/workflows/deploy.yml +32 -0
  4. data/.gitignore +5 -0
  5. data/404.md +16 -0
  6. data/Gemfile +10 -0
  7. data/LICENSE +674 -0
  8. data/README.md +121 -0
  9. data/_config.yaml +56 -0
  10. data/_includes/appcenter.html +9 -0
  11. data/_includes/byline.html +36 -0
  12. data/_includes/featured.html +27 -0
  13. data/_includes/footer.html +11 -0
  14. data/_includes/head.html +48 -0
  15. data/_includes/license.html +9 -0
  16. data/_includes/medium.html +8 -0
  17. data/_includes/nav.html +51 -0
  18. data/_includes/outdated.html +14 -0
  19. data/_includes/read-time.html +5 -0
  20. data/_includes/scripts.html +16 -0
  21. data/_includes/social.html +102 -0
  22. data/_includes/spotlight.html +15 -0
  23. data/_includes/svg/appcenter.svg +32 -0
  24. data/_includes/svg/creative-commons-by.svg +1 -0
  25. data/_includes/svg/creative-commons-sa.svg +1 -0
  26. data/_includes/svg/creative-commons.svg +1 -0
  27. data/_includes/svg/elementary.svg +28 -0
  28. data/_includes/svg/facebook.svg +1 -0
  29. data/_includes/svg/github.svg +1 -0
  30. data/_includes/svg/logomark.svg +1 -0
  31. data/_includes/svg/mastodon.svg +1 -0
  32. data/_includes/svg/patreon.svg +1 -0
  33. data/_includes/svg/paypal.svg +1 -0
  34. data/_includes/svg/reddit.svg +1 -0
  35. data/_includes/svg/rss-square.svg +1 -0
  36. data/_includes/svg/shopping-cart.svg +1 -0
  37. data/_includes/svg/slack.svg +1 -0
  38. data/_includes/svg/stack-exchange.svg +1 -0
  39. data/_includes/svg/twitter.svg +1 -0
  40. data/_includes/tags.html +7 -0
  41. data/_includes/thanks.html +93 -0
  42. data/_includes/title.html +12 -0
  43. data/_includes/twitter-card.html +24 -0
  44. data/_layouts/default.html +14 -0
  45. data/_layouts/error.html +8 -0
  46. data/_layouts/post.html +53 -0
  47. data/_layouts/tagfeed.json +51 -0
  48. data/_layouts/uglify.html +4 -0
  49. data/_posts/1992-02-01-test.md +125 -0
  50. data/_posts/2019-10-01-future-embargoed-post.md +18 -0
  51. data/_posts/2019-11-25-sponsor-post.md +18 -0
  52. data/_posts/2020-07-16-twitter-embeds.md +39 -0
  53. data/_posts/3000-12-31-future-post.md +11 -0
  54. data/_sass/_byline.scss +84 -0
  55. data/_sass/_code.scss +196 -0
  56. data/_sass/_colors.scss +94 -0
  57. data/_sass/_featured.scss +149 -0
  58. data/_sass/_figures.scss +150 -0
  59. data/_sass/_layout.scss +168 -0
  60. data/_sass/_nav.scss +73 -0
  61. data/_sass/_tags.scss +17 -0
  62. data/_sass/_twitter-cards.scss +79 -0
  63. data/_sass/_typography.scss +162 -0
  64. data/authors.md +23 -0
  65. data/blog-card.xcf +0 -0
  66. data/css/main.scss +119 -0
  67. data/feed.json +51 -0
  68. data/feed.xml +44 -0
  69. data/feed/updates.json +5 -0
  70. data/images/cc-by-sa.png +0 -0
  71. data/images/edit-copy-32.svg +439 -0
  72. data/images/facebook.svg +60 -0
  73. data/images/mastodon.svg +70 -0
  74. data/images/reddit.svg +27 -0
  75. data/images/twitter.svg +67 -0
  76. data/index.html +56 -0
  77. data/jekyll-theme-elementary-blog.gemspec +23 -0
  78. data/tags.md +20 -0
  79. metadata +91 -14
@@ -0,0 +1,73 @@
1
+ body > header {
2
+ background-color: var(--header-bg-color);
3
+ color: var(--header-fg-color);
4
+ fill: var(--header-fg-color);
5
+
6
+ nav {
7
+ display: flex;
8
+ font-size: 0;
9
+ overflow-x: auto;
10
+ padding: 0 1rem;
11
+
12
+ ul {
13
+ display: inline-block;
14
+ flex: 0 0 auto;
15
+ margin: 0;
16
+ padding: 0;
17
+ }
18
+
19
+ li {
20
+ display: inline-block;
21
+ list-style: none;
22
+ vertical-align: middle;
23
+ }
24
+
25
+ a {
26
+ color: var(--header-fg-color);
27
+ display: inline-block;
28
+ font-family: var(--ui-font);
29
+ font-size: 0.85rem;
30
+ line-height: 2.9em;
31
+ opacity: 1;
32
+ padding: 0 0.65rem;
33
+ text-decoration: none;
34
+ white-space: nowrap;
35
+ }
36
+
37
+ a:hover {
38
+ opacity: 0.7;
39
+ }
40
+
41
+ svg {
42
+ height: 1em;
43
+
44
+ * {
45
+ fill: inherit !important;
46
+ }
47
+ }
48
+
49
+ .logomark {
50
+ line-height: 0;
51
+
52
+ svg {
53
+ height: auto;
54
+ }
55
+ }
56
+ }
57
+
58
+ .primary {
59
+ justify-content: space-between;
60
+ }
61
+
62
+ .secondary {
63
+ background-color: var(--secondary-bg-color);
64
+ justify-content: center;
65
+
66
+ a {
67
+ color: var(--secondary-fg-color);
68
+ font-size: 0.7rem;
69
+ line-height: 3.6em;
70
+ }
71
+ }
72
+ }
73
+
@@ -0,0 +1,17 @@
1
+ aside.tags {
2
+ margin: 1em auto;
3
+ max-width: var(--content-width);
4
+ }
5
+
6
+ .tag {
7
+ background-color: var(--banana-300);
8
+ border-radius: 0.25em;
9
+ color: var(--banana-900);
10
+ display: inline-block;
11
+ font-family: var(--ui-font);
12
+ font-size: 0.75em;
13
+ line-height: 2em;
14
+ margin: 0.125em;
15
+ padding: 0 0.5em;
16
+ text-decoration: none;
17
+ }
@@ -0,0 +1,79 @@
1
+ .twitter-card {
2
+ background-color: var(--silver-100);
3
+ box-shadow:
4
+ 0 0 0 1px rgba(0, 0, 0, 0.05),
5
+ 0 3px 3px rgba(0, 0, 0, 0.22);
6
+ border-radius: 0.5em;
7
+ font-family: var(--ui-font);
8
+ margin: 0 auto 2em;
9
+ max-width: 50ch;
10
+ padding: 1em;
11
+
12
+ a {
13
+ color: inherit;
14
+ opacity: 1;
15
+ text-decoration: none;
16
+
17
+ &:hover {
18
+ text-decoration: underline;
19
+ }
20
+ }
21
+
22
+ p {
23
+ line-height: 1.5em;
24
+ margin-bottom: 0.5em;
25
+ }
26
+
27
+ header {
28
+ display: flex;
29
+ justify-content: space-between;
30
+ margin-bottom: 0.75em;
31
+
32
+ .account {
33
+ display: grid;
34
+
35
+ .avatar {
36
+ border-radius: 50%;
37
+ box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.05);
38
+ display: block;
39
+ grid-row-end: span 2;
40
+ height: 2.5em;
41
+ margin-right: 0.5em;
42
+ }
43
+
44
+ p,
45
+ strong {
46
+ font-size: 0.8em;
47
+ grid-column-start: 2;
48
+ line-height: 1.25;
49
+ margin: 0;
50
+ }
51
+
52
+ p {
53
+ opacity: 0.75;
54
+ }
55
+ }
56
+
57
+ .logo {
58
+ height: 1.25em;
59
+ margin: 0;
60
+ text-align: right;
61
+ }
62
+ }
63
+
64
+ footer {
65
+ font-size: 0.75em;
66
+ line-height: 1;
67
+ margin-top: 1.5em;
68
+
69
+ a {
70
+ display: flex;
71
+ justify-content: space-between;
72
+ opacity: 0.6;
73
+ }
74
+ }
75
+
76
+ @media (prefers-color-scheme: dark) {
77
+ background-color: var(--black-500);
78
+ }
79
+ }
@@ -0,0 +1,162 @@
1
+ :root {
2
+ --ui-font: "Open Sans", "Noto Sans", "Roboto", "Droid Sans", sans-serif;
3
+ --copy-font: "Noto Serif", "Droid Serif", serif;
4
+ --heading-font: Raleway, var(--ui-font);
5
+ }
6
+
7
+ html {
8
+ font-family: var(--copy-font);
9
+ font-size: 5.625vw;
10
+ font-weight: 400;
11
+ word-spacing: -0.05em;
12
+
13
+ @media (min-width: 320px) {
14
+ font-size: 18px;
15
+ }
16
+
17
+ @media (min-width: 1024px) {
18
+ font-size: 20px;
19
+ }
20
+
21
+ @media print {
22
+ font-size: 14px;
23
+ }
24
+ }
25
+
26
+ a {
27
+ color: var(--accent-color);
28
+ opacity: 0.8;
29
+ text-decoration-skip: ink;
30
+ transition: opacity 250ms ease;
31
+
32
+ &:hover,
33
+ &:focus {
34
+ opacity: 1;
35
+ }
36
+ }
37
+
38
+ article {
39
+ line-height: 1.75em;
40
+
41
+ p,
42
+ ul,
43
+ ol {
44
+ margin-top: 0.5em;
45
+ margin-bottom: 2em;
46
+ }
47
+
48
+ li {
49
+ padding-left: 0.25em;
50
+ }
51
+ }
52
+
53
+ h1,
54
+ h2,
55
+ h3,
56
+ h4,
57
+ h5,
58
+ h6 {
59
+ font-family: var(--heading-font);
60
+ line-height: 1.2em;
61
+ margin-top: 2em;
62
+ margin-bottom: 0;
63
+ }
64
+
65
+ h1 {
66
+ line-height: 1em;
67
+ }
68
+
69
+ h3,
70
+ h4,
71
+ h5 {
72
+ opacity: 0.8;
73
+ }
74
+
75
+ h6 {
76
+ opacity: 0.67;
77
+ }
78
+
79
+ header h1 {
80
+ font-size: 2em;
81
+ margin-top: 1em;
82
+ }
83
+
84
+ header h1 + h2 {
85
+ font-family: var(--ui-font);
86
+ font-size: 1.2rem;
87
+ font-weight: normal;
88
+ margin-top: 0.25em;
89
+ opacity: 0.5;
90
+ }
91
+
92
+ header h2 {
93
+ font-size: 1.5em;
94
+ margin-bottom: 1em;
95
+ }
96
+
97
+ header h2 + h3 {
98
+ font-family: var(--ui-font);
99
+ font-size: 0.9rem;
100
+ font-weight: normal;
101
+ margin-top: -1.5em;
102
+ margin-bottom: 1em;
103
+ opacity: 0.5;
104
+ }
105
+
106
+ blockquote {
107
+ max-width: var(--content-width);
108
+ margin-left: auto;
109
+ padding-left: 1em;
110
+ margin-right: auto;
111
+ font-style: italic;
112
+ border-left: 0.125em solid var(--accent-color);
113
+
114
+ em,
115
+ i {
116
+ font-style: normal;
117
+ }
118
+
119
+ aside & {
120
+ font-size: 1.6em;
121
+ line-height: 1.4em;
122
+ border: none;
123
+ margin: 2em auto;
124
+ opacity: 0.8;
125
+ padding: 0 1em;
126
+ }
127
+
128
+ .attribution {
129
+ display: block;
130
+ font-size: 0.8em;
131
+ font-style: normal;
132
+ margin-top: -1.5em;
133
+
134
+ &:before {
135
+ content: "–";
136
+ }
137
+ }
138
+ }
139
+
140
+ aside {
141
+ margin-bottom: 2em;
142
+ }
143
+
144
+ kbd {
145
+ background-color: rgba(200, 200, 200, 0.15);
146
+ border: 1px solid rgba(0, 0, 0, 0.30);
147
+ border-radius: 0.2em;
148
+ box-shadow:
149
+ inset 0 1px 0 0 rgba(255, 255, 255, 0.12),
150
+ inset 0 -2px 0 0 rgba(0, 0, 0, 0.15);
151
+ display: inline-block;
152
+ font-family: var(--ui-font);
153
+ font-size: 80%;
154
+ line-height: 1.5;
155
+ margin: 0 0.2em;
156
+ min-width: 1em;
157
+ padding: 0.125em 0.5em;
158
+ text-align: center;
159
+ user-select: none;
160
+ white-space: nowrap;
161
+ }
162
+
@@ -0,0 +1,23 @@
1
+ ---
2
+ ---
3
+
4
+ # Authors
5
+
6
+ <section class="author-list">
7
+ {% assign site_authors = site.authors | sort %}
8
+ {% for each_author in site_authors %}
9
+ {% if each_author[0] != 'anonymous' %}
10
+ {% assign posts = site.posts | where: "author", each_author[0] | sort | reverse %}
11
+ {% if posts.size > 0 %}
12
+ <hr />
13
+ <h2 id="{{ each_author[0] }}">{{ each_author[1].name }}</h2>
14
+ <p>{{ each_author[1].description }}</p>
15
+ {% for post in posts %}
16
+ {% unless post.hidden %}
17
+ {% include featured.html post=post %}
18
+ {% endunless %}
19
+ {% endfor %}
20
+ {% endif %}
21
+ {% endif %}
22
+ {% endfor %}
23
+ </section>
Binary file
@@ -0,0 +1,119 @@
1
+ ---
2
+ # Only the main Sass file needs front matter (the dashes are enough)
3
+ ---
4
+ @charset "utf-8";
5
+
6
+ // Global
7
+ @import "colors";
8
+ @import "layout";
9
+ @import "typography";
10
+
11
+ // Components
12
+ @import "byline";
13
+ @import "code";
14
+ @import "featured";
15
+ @import "figures";
16
+ @import "nav";
17
+ @import "tags";
18
+ @import "twitter-cards";
19
+
20
+ :root {
21
+ color-scheme: light dark;
22
+ }
23
+
24
+ * {
25
+ box-sizing: border-box;
26
+ }
27
+
28
+ body,
29
+ html {
30
+ background-color: var(--bg-color);
31
+ color: var(--fg-color);
32
+ fill: var(--fg-color);
33
+ margin: 0;
34
+ overflow-x: hidden;
35
+ }
36
+
37
+ html {
38
+ // To blend with the footer on short pages
39
+ background-color: var(--secondary-bg-color);
40
+ }
41
+
42
+ svg {
43
+ fill: inherit;
44
+ }
45
+
46
+ .error {
47
+ max-width: 22rem;
48
+ margin: 8em auto;
49
+ text-align: center;
50
+
51
+ p {
52
+ font-family: var(--ui-font);
53
+ }
54
+ }
55
+
56
+ nav.pagination {
57
+ font-size: 0; // Fix percentage issues with whitespace
58
+ margin: 2rem auto;
59
+ text-align: center;
60
+
61
+ a {
62
+ display: inline-block;
63
+ font-size: 1rem;
64
+ font-family: var(--ui-font);
65
+ padding: 1em;
66
+
67
+ &.next::after {
68
+ content: " →";
69
+ }
70
+
71
+ &.previous::before {
72
+ content: "← ";
73
+ }
74
+ }
75
+ }
76
+
77
+ .social {
78
+ font-size: 0; // Fix percentage issue with whitespace
79
+ margin: 4rem auto;
80
+ text-align: center;
81
+
82
+ h2 {
83
+ font-size: 1.5rem;
84
+ }
85
+
86
+ div {
87
+ display: inline-block;
88
+ font-size: 1rem;
89
+ width: 50%;
90
+ }
91
+
92
+ a {
93
+ display: inline-block;
94
+ margin: 0.75rem;
95
+
96
+ img {
97
+ width: 32px;
98
+ height: 32px;
99
+ }
100
+ }
101
+ }
102
+
103
+ .center {
104
+ margin-left: auto;
105
+ margin-right: auto;
106
+ text-align: center;
107
+ }
108
+
109
+ .button {
110
+ border: 1px solid;
111
+ border-radius: 0.25em;
112
+ font-family: var(--ui-font);
113
+ padding: 0.5em 1em;
114
+ text-decoration: none;
115
+ }
116
+
117
+ pre {
118
+ -webkit-text-size-adjust: none;
119
+ }