plainwhite 0.6 → 0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 415ae0d29ed33469ef13a934cc3170368c1c0a03
4
- data.tar.gz: 264415d30a381f3dcd59e0bcf3f4623518282bf6
3
+ metadata.gz: 612450b0f669f05f7c45a5318084175d095f8e7a
4
+ data.tar.gz: 07f3628977e701e2bc0ac3c5c2db30ed1eb3d1b8
5
5
  SHA512:
6
- metadata.gz: 0fd2ad253990e76fb3e6161e0121b1c5df0faf8052810f5c9e63ff6ab28a6338316133568c7ca207edbe5f7eb1bdc450acb88d4eb6fa259ec08ec56935c4c67c
7
- data.tar.gz: 99158ae7ed4cddf35413e73ac96639f0461df0d7d976146177e57f42c595529aaeb736501d493f7782983b0853a4aa8533a75956dd3acb4e685c2532db04b68b
6
+ metadata.gz: 24bca9695362f553e69c4ea8329dd45acd2a50e9dfc52f4b964641486e289d0882ac6766b05bf56271a4ac469f61adceff7fe9a632efecf15606e543fd8ad914
7
+ data.tar.gz: 6c03df00cfd192179477eeff99819adf7126c721c504e3e330835b4b74c0f39b183249bfc3daf445ce543edae6ddbc84c7f06116d31257224adf41c8b5054f5c
@@ -0,0 +1,34 @@
1
+ ---
2
+ title: Page Not Found
3
+ ---
4
+ <!DOCTYPE html>
5
+ <html lang="en">
6
+ <head>
7
+ {%- include head.html -%}
8
+ <style>
9
+ h2 {
10
+ font-feature-settings: "lnum";
11
+ background-color: #ddd;
12
+ width: 140px;
13
+ height: 140px;
14
+ border-radius: 100%;
15
+ display: flex;
16
+ justify-content: center;
17
+ align-items: center
18
+ }
19
+ body {
20
+ display: flex;
21
+ justify-content: center;
22
+ align-items: center;
23
+ flex-direction: column;
24
+ font-size: 20px;
25
+ height: 80vh;
26
+ }
27
+ p {text-align: center; line-height: 2em;}
28
+ </style>
29
+ </head>
30
+ <body>
31
+ <h2>404</h2>
32
+ <p>Page not found.</p>
33
+ </body>
34
+ </html>
data/README.md CHANGED
@@ -2,15 +2,18 @@
2
2
 
3
3
  Simplistic jekyll portfolio-style theme for writers.
4
4
 
5
- ![plainwhite theme preview](/screenshot.png)
5
+ **Demo**: [thelehhman.com](https://thelehhman.com)
6
6
 
7
+ ![plainwhite theme preview](/screenshot.png)
7
8
 
8
9
  ## Installation on Github Pages
9
10
 
10
11
  Add this line to your site's `_config.yml`:
12
+
11
13
  ```yaml
12
- remote_theme: thelehhman/plainwhite-jekyll
14
+ remote_theme: samarsault/plainwhite-jekyll
13
15
  ```
16
+
14
17
  ## Installation
15
18
 
16
19
  Add this line to your Jekyll site's `Gemfile`:
@@ -35,7 +38,8 @@ Or install it yourself as:
35
38
 
36
39
  ## Usage
37
40
 
38
- The "plainwhite" key in _config.yml is used to customize the theme data.
41
+ The "plainwhite" key in \_config.yml is used to customize the theme data.
42
+
39
43
  ```yaml
40
44
  plainwhite:
41
45
  name: Adam Denisov
@@ -43,18 +47,24 @@ plainwhite:
43
47
  date_format: "%b %-d, %Y"
44
48
 
45
49
  social_links:
46
- twitter: thelehhman
47
- github: thelehhman
48
- linkedIn: in/thelehhman # format: locale/username
50
+ twitter: samarsault
51
+ github: samarsault
52
+ linkedIn: in/samarsault # format: locale/username
49
53
  ```
50
54
 
51
55
  **Updating Placeholder Image**
52
56
 
53
- The placeholder portfolio image can be replaced by the desired image by placing it as `assets/portfolio.png` in your jekyll website.
57
+ The placeholder portfolio image can be replaced by the desired image by placing it as `assets/portfolio.png` in your jekyll website, or by changing the following line in `_config.yaml`
58
+
59
+ ```yaml
60
+ plainwhite:
61
+ portfolio_image: "assets/portfolio.png" # the path from the base directory of the site to the image to display (no / at the start)
62
+ ```
54
63
 
55
64
  **Comments (Disqus)**
56
65
 
57
66
  Comments on posts can be enabled by specifying your disqus_shortname under plainwhite in `_config.yml`. For example,
67
+
58
68
  ```yaml
59
69
  plainwhite:
60
70
  disqus_shortname: games
@@ -63,26 +73,108 @@ plainwhite:
63
73
  **Google Analytics**
64
74
 
65
75
  It can be enabled by specifying your analytics id under plainwhite in `_config.yml`
76
+
77
+ ```yaml
78
+ plainwhite:
79
+ analytics_id: "< YOUR ID >"
80
+ ```
81
+
82
+ **Sitemap**
83
+
84
+ It can be toggled by the following line to under plainwhite in `_config.yml`
85
+
66
86
  ```yaml
67
87
  plainwhite:
68
- analytics_id: '< YOUR ID >'
88
+ sitemap: true
69
89
  ```
70
90
 
71
91
  **Excerpts**
72
92
 
73
93
  Excerpts can be enabled by adding the following line to your `_config.yml`
94
+
74
95
  ```yaml
75
96
  show_excerpts: true
76
97
  ```
98
+
77
99
  **Layouts**
78
100
 
79
101
  - Home
80
102
  - Page
81
103
  - Post
82
104
 
105
+ **Navigation**
106
+
107
+ Navigation can be enabled by adding the following line to your `_config.yml`
108
+
109
+ ```yaml
110
+ plainwhite:
111
+ navigation:
112
+ - title: My Work
113
+ url: "/my-work"
114
+ - title: Resume
115
+ url: "/resume"
116
+ ```
117
+
118
+ **Dark mode**
119
+
120
+ Dark mode can be enabled by setting the `dark_mode` flag in your `_config.yml`
121
+
122
+ The website will check the OS preferred color scheme and set the theme accordingly, the preference will then be saved in a cookie
123
+
124
+ ```yaml
125
+ plainwhite:
126
+ dark_mode: true
127
+ ```
128
+
129
+ ![plainwhite dark theme previe](/dark.png)
130
+
131
+ **Multiline tagline**
132
+
133
+ Tagline can be multiline in this way
134
+
135
+ ```yaml
136
+ plainwhite:
137
+ tagline: |
138
+ First Line.
139
+
140
+ Second Line.
141
+
142
+ Third Line.
143
+ ```
144
+
145
+ **Search-bar**
146
+
147
+ Search-bar can be enabled by adding the following line to `config.yml`
148
+
149
+ ```yaml
150
+ plainwhite:
151
+ search: true
152
+ ```
153
+
154
+ Search is powered by [Simple-Jekyll-Search](https://github.com/christian-fei/Simple-Jekyll-Search) Jekyll plugin. A `search.json` containing post meta and contents will be generated in site root folder. Plugin JavaScript will then match for posts based on user input. More info and `search.json` customization documentation can be found in plugin repository.
155
+
156
+ **Base URL**
157
+
158
+ You can specify a custom base URL (eg. example.com/blog/) by adding the following line to `_config.yaml`. Note that there is no trailing slash on the URL.
159
+
160
+ ```yaml
161
+ baseurl: "/blog"
162
+ ```
163
+
164
+ **Language**
165
+
166
+ You can set the `lang` attribute of the `<html>` tag on your pages by changing the following line in `_config.yml`:
167
+
168
+ ```yaml
169
+ plainwhite:
170
+ html_lang: "en"
171
+ ```
172
+
173
+ [See here for a full list of available language codes](https://www.w3schools.com/tags/ref_country_codes.asp)
174
+
83
175
  ## Contributing
84
176
 
85
- Bug reports and pull requests are welcome on GitHub at https://github.com/thelehhman/plainwhite-jekyll. 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.
177
+ Bug reports and pull requests are welcome on GitHub at https://github.com/samarsault/plainwhite-jekyll. 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.
86
178
 
87
179
  ## Development
88
180
 
@@ -93,7 +185,15 @@ Your theme is setup just like a normal Jekyll site! To test your theme, run `bun
93
185
  When your theme is released, only the files in `_layouts`, `_includes`, `_sass` and `assets` tracked with Git will be bundled.
94
186
  To add a custom directory to your theme-gem, please edit the regexp in `plainwhite.gemspec` accordingly.
95
187
 
188
+ ## Donation
189
+ If this project help you reduce time to develop, you can give me a cup of coffee :)
190
+
191
+ [![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://paypal.me/thelehhman)
192
+
96
193
  ## License
97
194
 
98
195
  The theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
99
196
 
197
+ ## More themes
198
+
199
+ - [Texture](https://github.com/samarsault/texture)
@@ -1,34 +1,148 @@
1
1
  <!DOCTYPE html>
2
- <html lang="en">
2
+ <html lang="{{ site.plainwhite.html_lang }}">
3
+
3
4
  <head>
4
- {%- include head.html -%}
5
+ {%- include head.html -%}
5
6
  </head>
7
+
6
8
  <body>
7
- <main class="container">
8
- <section class="about">
9
- <img src="{{ "/assets/portfolio.png" | relative_url }}" alt="{{ site.plainwhite.name }}">
10
- <h2>{{ site.plainwhite.name }}</h2>
11
- <p class="tagline">{{ site.plainwhite.tagline }}</p>
12
- <ul class="social">
13
- <a href="https://github.com/{{ site.plainwhite.social_links.github }}"><li><i class="icon-github-circled"></i></li></a>
14
- <a href="https://linkedin.com/{{ site.plainwhite.social_links.linkedIn }}"><li><i class="icon-linkedin-squared"></i></li></a>
15
- <a href="https://twitter.com/{{ site.plainwhite.social_links.twitter }}"><li><i class="icon-twitter-squared"></i></li></a>
16
- </ul>
17
- <p>&copy; 2019</p>
18
- </section>
19
- <section class="content">
20
- {{ content }}
21
- </section>
22
- </main>
23
- {%- if site.plainwhite.analytics_id -%}
24
- <script async src="https://www.googletagmanager.com/gtag/js?id={{ site.plainwhite.analytics_id }}"></script>
25
- <script>
26
- window.dataLayer = window.dataLayer || [];
27
- function gtag() { dataLayer.push(arguments); }
28
- gtag('js', new Date());
9
+ <main class="container">
10
+ <section class="about">
11
+ <a href="{{ "/" | relative_url}}"><img src="{{site.baseurl }}/{{ site.plainwhite.portfolio_image }}" alt="{{ site.plainwhite.name }}"></a>
12
+ <h2 id="title">
13
+ <a href="{{ "/" | relative_url }}">{{ site.plainwhite.name }}</a>
14
+ </h2>
15
+ <p class="tagline">{{ site.plainwhite.tagline }}</p>
16
+ <ul class="social">
17
+ {%- if site.plainwhite.social_links.github -%}
18
+ <a href="https://github.com/{{ site.plainwhite.social_links.github }}" target="_blank">
19
+ <li>
20
+ <i class="icon-github-circled"></i>
21
+ </li>
22
+ </a>
23
+ {%- endif -%}
24
+ {%- if site.plainwhite.social_links.gitlab -%}
25
+ <a href="https://gitlab.com/{{ site.plainwhite.social_links.gitlab }}" target="_blank">
26
+ <li>
27
+ <i class="icon-gitlab"></i>
28
+ </li>
29
+ </a>
30
+ {%- endif -%}
31
+ {%- if site.plainwhite.social_links.linkedIn -%}
32
+ <a href="https://www.linkedin.com/{{ site.plainwhite.social_links.linkedIn }}" target="_blank">
33
+ <li>
34
+ <i class="icon-linkedin-squared"></i>
35
+ </li>
36
+ </a>
37
+ {%- endif -%}
38
+ {%- if site.plainwhite.social_links.twitter -%}
39
+ <a href="https://twitter.com/{{ site.plainwhite.social_links.twitter }}" target="_blank">
40
+ <li>
41
+ <i class="icon-twitter-squared"></i>
42
+ </li>
43
+ </a>
44
+ {%- endif -%}
45
+ {%- if site.plainwhite.social_links.instagram -%}
46
+ <a href="https://instagram.com/{{ site.plainwhite.social_links.instagram }}" target="_blank">
47
+ <li>
48
+ <i class="icon-instagram"></i>
49
+ </li>
50
+ </a>
51
+ {%- endif -%}
52
+ {%- if site.plainwhite.social_links.facebook -%}
53
+ <a href="https://facebook.com/{{ site.plainwhite.social_links.facebook }}" target="_blank">
54
+ <li>
55
+ <i class="icon-facebook-squared"></i>
56
+ </li>
57
+ </a>
58
+ {%- endif -%}
59
+ {%- if site.plainwhite.social_links.youtube -%}
60
+ <a href="https://youtube.com/{{ site.plainwhite.social_links.youtube }}" target="_blank">
61
+ <li>
62
+ <i class="icon-youtube"></i>
63
+ </li>
64
+ </a>
65
+ {%- endif -%}
66
+ {%- if site.plainwhite.social_links.pinterest -%}
67
+ <a href="https://pinterest.com/{{ site.plainwhite.social_links.pinterest }}" target="_blank">
68
+ <li>
69
+ <i class="icon-pinterest-squared"></i>
70
+ </li>
71
+ </a>
72
+ {%- endif -%}
73
+ {%- if site.plainwhite.social_links.dribbble -%}
74
+ <a href="https://dribbble.com/{{ site.plainwhite.social_links.dribbble }}" target="_blank">
75
+ <li>
76
+ <i class="icon-dribbble"></i>
77
+ </li>
78
+ </a>
79
+ {%- endif -%}
80
+ {%- if site.plainwhite.social_links.flickr -%}
81
+ <a href="https://flickr.com/{{ site.plainwhite.social_links.flickr }}" target="_blank">
82
+ <li>
83
+ <i class="icon-flickr"></i>
84
+ </li>
85
+ </a>
86
+ {%- endif -%}
87
+ {%- if site.plainwhite.social_links.telegram -%}
88
+ <a href=" https://t.me/{{ site.plainwhite.social_links.telegram }}" target="_blank">
89
+ <li>
90
+ <i class="icon-telegram"></i>
91
+ </li>
92
+ </a>
93
+ {%- endif -%}
94
+ {%- if site.plainwhite.social_links.soundcloud -%}
95
+ <a href=" https://soundcloud.com/{{ site.plainwhite.social_links.soundcloud }}" target="_blank">
96
+ <li>
97
+ <i class="icon-soundcloud"></i>
98
+ </li>
99
+ </a>
100
+ {%- endif -%}
101
+ </ul>
102
+ {%- if site.plainwhite.navigation -%}
103
+ <nav class="navigation">
104
+ <ul>
105
+ {% for link in site.plainwhite.navigation %}
106
+ <li>
107
+ <a href="{{ link.url }}">{{ link.title }}</a>
108
+ </li>
109
+ {% endfor %}
110
+ </ul>
111
+ </nav>
112
+ {%- endif -%}
113
+ <p>&copy;
114
+ {{ "now" | date: "%Y" }}</p>
115
+ {%- if site.plainwhite.dark_mode -%}
116
+ <div>
117
+ <p>Dark Mode
118
+ <i class="icon-moon"></i>
119
+ <label class="switch">
120
+ <input type="checkbox" id="dark-mode-toggle">
121
+ <span class="slider round" onclick="toggleDarkMode()"></span>
122
+ </label>
123
+ </p>
124
+ </div>
125
+ <script type="text/javascript" src="{{ "/assets/js/darkmode.js" | relative_url }}"></script>
126
+ {%- endif -%}
127
+ </section>
128
+ <section class="content">
129
+ {{ content }}
130
+ </section>
131
+ </main>
132
+ {%- if site.plainwhite.analytics_id -%}
133
+ <script async src="https://www.googletagmanager.com/gtag/js?id={{ site.plainwhite.analytics_id }}"></script>
134
+ <script>
135
+ window.dataLayer = window.dataLayer || [];
136
+ function gtag() { dataLayer.push(arguments); }
137
+ gtag('js', new Date());
138
+ gtag('config', '{{ site.plainwhite.analytics_id }}');
139
+ </script>
140
+ {%- endif -%}
29
141
 
30
- gtag('config', '{{ site.plainwhite.analytics_id }}');
31
- </script>
32
- {%- endif -%}
142
+ {% if site.plainwhite.search %}
143
+ <script src="{{ "/assets/js/simple-jekyll-search.min.js" | relative_url }}"></script>
144
+ <script src="{{ "/assets/js/search.js" | relative_url }}"></script>
145
+ {% endif %}
33
146
  </body>
34
- </html>
147
+
148
+ </html>
@@ -3,41 +3,55 @@ layout: default
3
3
  ---
4
4
 
5
5
  {%- if page.title -%}
6
- <h1 class="page-heading">{{ page.title }}</h1>
6
+ <h1 class="page-heading">{{ page.title }}</h1>
7
7
  {%- endif -%}
8
8
 
9
9
  {{ content }}
10
10
 
11
11
  {%- if site.posts.size > 0 -%}
12
- <ul class="posts">
13
- {%- for post in site.posts -%}
14
- <li>
15
- <h1 id="posts-label">posts</h1>
16
- </li>
17
- <li>
18
- {%- assign date_format = site.minima.date_format | default: "%b %-d, %Y" -%}
19
- <a class="post-link" href="{{ post.url | relative_url }}">
20
- <h2 class="post-title">{{ post.title | escape }}</h2>
21
- </a>
22
- <div class="post-meta">
23
- <ul class="post-categories">
24
- {%- for tag in post.categories -%}
25
- <li>{{ tag }}</li>
26
- {%- endfor -%}
27
- </ul>
28
- <div class="post-date"><i class="icon-calendar"></i>{{ post.date | date: date_format }}</div>
29
- </div>
30
- <div class="post">
31
- {%- if site.show_excerpts -%}
32
- {{ post.excerpt }}
33
- {%- endif -%}
34
- </div>
35
- </li>
36
- {%- endfor -%}
37
- </ul>
12
+ <ul class="posts">
13
+ <li class="posts-labelgroup" id="posts-labelgroup">
14
+ <h1 id="posts-label">posts</h1>
15
+ {% if site.plainwhite.search %}
16
+ <div class="search-container">
17
+ <div class="search-section">
18
+ <i class="icon-search"></i>
19
+ <input type="text" name="search" id="searchbar" autocomplete="off" aria-label="search in posts">
20
+ </div>
21
+ <div class="search-results" id="search-results" data-placeholder="No Results" style="display: none;"></div>
22
+ </div>
23
+ {% endif %}
24
+ </li>
38
25
 
39
- <!-- <p class="feed-subscribe"><svg class="svg-icon orange">
26
+ {%- for post in site.posts -%}
27
+ <li>
28
+ {%- assign date_format = site.plainwhite.date_format | default: "%b %-d, %Y" -%}
29
+ <a class="post-link" href="{{ post.url | relative_url }}">
30
+ <h2 class="post-title">{{ post.title | escape }}</h2>
31
+ </a>
32
+ <div class="post-meta">
33
+ <div class="post-date">
34
+ <i class="icon-calendar"></i>
35
+ {{ post.date | date: date_format }}
36
+ </div>
37
+ {%- if post.categories.size > 0-%}
38
+ <ul class="post-categories">
39
+ {%- for tag in post.categories -%}
40
+ <li>{{ tag }}</li>
41
+ {%- endfor -%}
42
+ </ul>
43
+ {%- endif -%}
44
+ </div>
45
+ <div class="post">
46
+ {%- if site.show_excerpts -%}
47
+ {{ post.excerpt }}
48
+ {%- endif -%}
49
+ </div>
50
+ </li>
51
+ {%- endfor -%}
52
+ </ul>
53
+
54
+ <!-- <p class="feed-subscribe"><svg class="svg-icon orange">
40
55
  <use xlink:href="{{ '/assets/minima-social-icons.svg#rss' | relative_url }}"></use>
41
56
  </svg><a href="{{ "/feed.xml" | relative_url }}">Subscribe</a></p> -->
42
- {%- endif -%}
43
-
57
+ {%- endif -%}