jekyll-theme-basically-basic 1.1.0 → 1.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -1
- data/README.md +713 -713
- data/_includes/contact-list.html +2 -2
- data/_includes/cv/skills.html +20 -20
- data/_layouts/default.html +1 -1
- data/_layouts/home.html +1 -1
- data/_sass/basically-basic.scss +1 -1
- data/assets/javascripts/main.js +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 72c7ec38c98bdf27990c7f85f2b6253acb88db8a
|
4
|
+
data.tar.gz: a2c577987fc1ace38282adbc7ce2cf56d0e6b03d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 097d7d4989d385ec38583f2dbe7dc3cd31023505c4f4c1bfc7eb5b798db8be0188ee28a8818d890bbaf98eda1ec44b132ff9f0388b74081eaca48cb2e40eeaf0
|
7
|
+
data.tar.gz: c4d91e56e0fc7776d42e2c9c817fc8bd17da2760cffddb10b8c39840c1fd171040ddddddab732e49b37a4b91804c9aab11d5bb968df9c142969fcd079cb1283b
|
data/CHANGELOG.md
CHANGED
@@ -5,7 +5,10 @@ All notable changes to this project will be documented in this file.
|
|
5
5
|
The format is based on [Keep a Changelog](http://keepachangelog.com/)
|
6
6
|
and this project adheres to [Semantic Versioning](http://semver.org/).
|
7
7
|
|
8
|
-
## [
|
8
|
+
## [1.1.1] - 2017-09-06
|
9
|
+
### Changed
|
10
|
+
- Change `gems` key in `_config.yml` to `plugins`. [#23](https://github.com/mmistakes/jekyll-theme-basically-basic/pull/23)
|
11
|
+
- Liquid syntax error: "Expected id but found end_of_string_in `cv.skills.`" in `/cv/skills.html` include.
|
9
12
|
|
10
13
|
## [1.1.0] - 2017-03-30
|
11
14
|
### Added
|
data/README.md
CHANGED
@@ -1,713 +1,713 @@
|
|
1
|
-
# [Basically Basic Jekyll Theme][1]
|
2
|
-
|
3
|
-
[![Gem](https://img.shields.io/gem/v/jekyll-theme-basically-basic.svg?style=flat-square)](https://rubygems.org/gems/jekyll-theme-basically-basic)
|
4
|
-
[![license](https://img.shields.io/github/license/mmistakes/jekyll-theme-basically-basic.svg?style=flat-square)](LICENSE.md)
|
5
|
-
[![Code Climate](https://img.shields.io/codeclimate/github/mmistakes/jekyll-theme-basically-basic.svg?style=flat-square)](https://codeclimate.com/github/mmistakes/jekyll-theme-basically-basic)
|
6
|
-
|
7
|
-
Basically Basic is a [Jekyll theme](https://jekyllrb.com/docs/themes/) meant as
|
8
|
-
a substitute for the default --- [Minima](https://github.com/jekyll/minima).
|
9
|
-
Conventions and features found there are fully supported by **Basically Basic**,
|
10
|
-
with a few enhancements thrown in for good measure:
|
11
|
-
|
12
|
-
- Clean responsive design with [six customizable skins](#skin)
|
13
|
-
- Curriculum Vitæ/Resume layout powered by [JSON data](http://registry.jsonresume.org/)
|
14
|
-
- About page layout
|
15
|
-
- Disqus Comments and Google Analytics support
|
16
|
-
- SEO best practices via [Jekyll SEO Tag](https://github.com/jekyll/jekyll-seo-tag/)
|
17
|
-
|
18
|
-
[![Basically Basic live preview][2]][1]
|
19
|
-
|
20
|
-
[1]: https://mmistakes.github.io/jekyll-theme-basically-basic/
|
21
|
-
[2]: https://cloud.githubusercontent.com/assets/1376749/24117647/6dede894-0d81-11e7-9c2c-f19bea45e219.jpg (live preview)
|
22
|
-
|
23
|
-
## Table of Contents
|
24
|
-
|
25
|
-
1. [Installation](#installation)
|
26
|
-
1. [Ruby Gem Method](#ruby-gem-method)
|
27
|
-
2. [GitHub Pages Compatible Method](#github-pages-compatible-method)
|
28
|
-
1. [Remove the Unnecessary](#remove-the-unnecessary)
|
29
|
-
2. [Structure](#structure)
|
30
|
-
1. [Starting Fresh](#starting-fresh)
|
31
|
-
2. [Starting from jekyll new](#starting-from-jekyll-new)
|
32
|
-
3. [Configuration](#configuration)
|
33
|
-
1. [Skin](#skin)
|
34
|
-
2. [Google Fonts](#google-fonts)
|
35
|
-
3. [Text](#text)
|
36
|
-
4. [Navigation](#navigation)
|
37
|
-
5. [Pagination](#pagination)
|
38
|
-
6. [Author](#author)
|
39
|
-
7. [Reading Time](#reading-time)
|
40
|
-
8. [Comments (via Disqus)](#comments-via-disqus)
|
41
|
-
9. [Google Analytics](#google-analytics)
|
42
|
-
4. [Layouts](#layouts)
|
43
|
-
1. [Default](#layout-default)
|
44
|
-
2. [Post](#layout-post)
|
45
|
-
3. [Page](#layout-page)
|
46
|
-
4. [Home](#layout-home)
|
47
|
-
5. [About](#layout-about)
|
48
|
-
6. [Curriculum Vitæ/Resume](#layout-cv)
|
49
|
-
5. [Customization](#customization)
|
50
|
-
1. [Overriding Includes and Layouts](#overriding-includes-and-layouts)
|
51
|
-
2. [Customizing Sass (SCSS)](#customizing-sass-scss)
|
52
|
-
3. [Customizing JavaScript](#customizing-javascript)
|
53
|
-
4. [SVG Icons](#svg-icons)
|
54
|
-
5. [Customizing Sidebar Content](#customizing-sidebar-content)
|
55
|
-
6. [Development](#development)
|
56
|
-
7. [Contributing](#contributing)
|
57
|
-
1. [Pull Requests](#pull-requests)
|
58
|
-
8. [Credits](#credits)
|
59
|
-
|
60
|
-
## Installation
|
61
|
-
|
62
|
-
If you're running Jekyll v3.3+ and self-hosting you can quickly install the
|
63
|
-
theme as Ruby gem. If you're hosting with GitHub Pages you'll have to use the
|
64
|
-
"repo fork" method or directly copy all of the theme files (see
|
65
|
-
[structure](#structure) below) into your project.
|
66
|
-
|
67
|
-
### Ruby Gem Method
|
68
|
-
|
69
|
-
1. Install the theme as a Ruby Gem by adding it to your `Gemfile` like so:
|
70
|
-
|
71
|
-
```ruby
|
72
|
-
gem "jekyll-theme-basically-basic"
|
73
|
-
```
|
74
|
-
|
75
|
-
2. Fetch and update your bundled gems by running the following
|
76
|
-
[Bundler](http://bundler.io/) command:
|
77
|
-
|
78
|
-
```bash
|
79
|
-
bundle
|
80
|
-
```
|
81
|
-
|
82
|
-
3. Set the `theme` in your project's Jekyll configuration, `_config.yml`:
|
83
|
-
|
84
|
-
```yaml
|
85
|
-
theme: jekyll-theme-basically-basic
|
86
|
-
```
|
87
|
-
|
88
|
-
### GitHub Pages Compatible Method
|
89
|
-
|
90
|
-
Fork the [Basically Basic repo](https://github.com/mmistakes/jekyll-theme-basically-basic/fork),
|
91
|
-
then rename it to **USERNAME.github.io** --- replacing **USERNAME** with your
|
92
|
-
GitHub username.
|
93
|
-
|
94
|
-
**Note:** Your Jekyll site should be viewable immediately at
|
95
|
-
<http://USERNAME.github.io>. If it's not, you can force a rebuild by
|
96
|
-
**configuring your site** (see below for more details).
|
97
|
-
|
98
|
-
Replace the contents of `Gemfile` found in the root of your Jekyll site with
|
99
|
-
the following:
|
100
|
-
|
101
|
-
```ruby
|
102
|
-
source "https://rubygems.org"
|
103
|
-
|
104
|
-
gem "github-pages", group: :jekyll_plugins
|
105
|
-
```
|
106
|
-
|
107
|
-
Then run `bundle update` and verify that the [GitHub Pages gem](https://github.com/github/pages-gem)
|
108
|
-
and its dependencies install properly.
|
109
|
-
|
110
|
-
#### Remove the Unnecessary
|
111
|
-
|
112
|
-
If you forked or downloaded the `jekyll-theme-basically-basic` repo you can
|
113
|
-
safely remove the following files and folders:
|
114
|
-
|
115
|
-
- `.codeclimate.yml`
|
116
|
-
- `.editorconfig`
|
117
|
-
- `.gitattributes`
|
118
|
-
- `.github`
|
119
|
-
- `.scss-lint.yml`
|
120
|
-
- `CHANGELOG.md`
|
121
|
-
- `jekyll-theme-basically-basic.gemspec`
|
122
|
-
- `LICENSE.md`
|
123
|
-
- `Rakefile`
|
124
|
-
- `README.md`
|
125
|
-
- `screenshot.png`
|
126
|
-
- `/docs`
|
127
|
-
- `/example`
|
128
|
-
|
129
|
-
## Structure
|
130
|
-
|
131
|
-
Layouts, includes, Sass partials, and data files are all placed in their default
|
132
|
-
locations. Stylesheets and scripts in `assets`, and a few development related
|
133
|
-
files in the project's root directory.
|
134
|
-
|
135
|
-
**Please note:** If you installed Basically Basic via the Ruby Gem method, theme
|
136
|
-
files found in `/_layouts`, `/_includes`, `/_sass`, and `/assets` will be
|
137
|
-
missing. This is normal as they are bundled with the [`jekyll-theme-basically-basic`](https://rubygems.org/gems/jekyll-theme-basically-basic) gem.
|
138
|
-
|
139
|
-
```bash
|
140
|
-
jekyll-theme-basically-basic
|
141
|
-
├── _data # data files
|
142
|
-
| └── theme.yml # theme settings and custom text
|
143
|
-
├── _includes # theme includes and SVG icons
|
144
|
-
├── _layouts # theme layouts (see below for details)
|
145
|
-
├── _sass # Sass partials
|
146
|
-
├── assets
|
147
|
-
| ├── javascripts
|
148
|
-
| | └── main.js
|
149
|
-
| └── stylesheets
|
150
|
-
| └── main.scss
|
151
|
-
├── _config.yml # sample configuration
|
152
|
-
└── index.md # sample home page (all posts/not paginated)
|
153
|
-
```
|
154
|
-
|
155
|
-
### Starting Fresh
|
156
|
-
|
157
|
-
After creating a `Gemfile` and installing the theme you'll need to add and edit
|
158
|
-
the following files:
|
159
|
-
|
160
|
-
- [`_config.yml`](_config.yml)
|
161
|
-
- [`/_data/theme.yml`](_data/theme.yml)
|
162
|
-
- [`index.md`](index.md)
|
163
|
-
|
164
|
-
**Note:** Consult the [**pagination**](#pagination) documentation below for
|
165
|
-
instructions on how to enable it for the home page.
|
166
|
-
|
167
|
-
### Starting from `jekyll new`
|
168
|
-
|
169
|
-
Using the `jekyll new` command will get you up and running the quickest.
|
170
|
-
|
171
|
-
Edit `_config.yml` and create `_data/theme.yml` as instructed above and you're
|
172
|
-
good to go.
|
173
|
-
|
174
|
-
## Configuration
|
175
|
-
|
176
|
-
Configuration of site-wide elements (`lang`, `title`, `description`, `logo`,
|
177
|
-
`author`, etc.) happens in your project's `_config.yml`. See the
|
178
|
-
[example configuration](example/_config.yml) in this repo for additional
|
179
|
-
reference.
|
180
|
-
|
181
|
-
| | Description |
|
182
|
-
| ------------------ | ------------------------------------------------------------------------- |
|
183
|
-
| `lang` | Used to indicate the language of text (e.g., en-US, en-GB, fr) |
|
184
|
-
| `title` | Your site's title (e.g., Dungan's Awesome Site) |
|
185
|
-
| `description` | Short site description (e.g., A blog about grasshopper mash) |
|
186
|
-
| `url` | The full URL to your site (e.g., https://groverloaf.org) |
|
187
|
-
| `author` | Global author information (see below) |
|
188
|
-
| `logo` | Path to a site-wide logo ~100x100px (e.g., /assets/your-company-logo.png) |
|
189
|
-
| `twitter_username` | Site-wide Twitter username, used as a link in sidebar |
|
190
|
-
| `github_username` | Site-wide GitHub username, used as a link in sidebar |
|
191
|
-
|
192
|
-
For more configuration options be sure to consult the documentation for:
|
193
|
-
[**jekyll-seo-tag**][jekyll-seo-tag], [**jekyll-feed**][jekyll-feed],
|
194
|
-
[**jekyll-paginate**][jekyll-paginate], and [**jekyll-sitemap**][jekyll-sitemap].
|
195
|
-
|
196
|
-
[jekyll-seo-tag]: https://github.com/jekyll/jekyll-seo-tag
|
197
|
-
[jekyll-feed]: https://github.com/jekyll/jekyll-feed
|
198
|
-
[jekyll-paginate]: https://github.com/jekyll/jekyll-paginate
|
199
|
-
[jekyll-sitemap]: https://github.com/jekyll/jekyll-sitemap
|
200
|
-
|
201
|
-
### Skin
|
202
|
-
|
203
|
-
This theme comes in six different skins (color variations). To change skins add
|
204
|
-
one of the following to your [`/_data/theme.yml`](_data/theme.yml) file:
|
205
|
-
|
206
|
-
| `skin: default` | `skin: night` | `skin: plum` |
|
207
|
-
| --- | --- | --- |
|
208
|
-
| ![default-skin](https://cloud.githubusercontent.com/assets/1376749/24115744/c0618c90-0d7a-11e7-8e2d-ec70f9db0c1b.png) | ![night-skin](https://cloud.githubusercontent.com/assets/1376749/24115770/d61127f8-0d7a-11e7-9158-986bee2be8e7.png) | ![plum-skin](https://cloud.githubusercontent.com/assets/1376749/24115778/db523a0e-0d7a-11e7-9452-8692b736d67e.png) |
|
209
|
-
|
210
|
-
| `skin: sea` | `skin: soft` | `skin: steel` |
|
211
|
-
| --- | --- | --- |
|
212
|
-
| ![sea-skin](https://cloud.githubusercontent.com/assets/1376749/24115788/e27d818a-0d7a-11e7-8c56-2480e9ae83fb.png) | ![soft-skin](https://cloud.githubusercontent.com/assets/1376749/24115790/e6e548e8-0d7a-11e7-8e2d-d8053e8befd1.png) | ![steel-skin](https://cloud.githubusercontent.com/assets/1376749/24115799/eb2108e8-0d7a-11e7-8cc3-a6f22e4082ee.png) |
|
213
|
-
|
214
|
-
### Google Fonts
|
215
|
-
|
216
|
-
This theme allows you to easily use [Google Fonts](https://fonts.google.com/)
|
217
|
-
throughout the theme. Simply add the following to your
|
218
|
-
[`/_data/theme.yml`](_data/theme.yml), replacing the font `name` and `weights`
|
219
|
-
accordingly.
|
220
|
-
|
221
|
-
```yaml
|
222
|
-
google_fonts:
|
223
|
-
- name: "Fira Sans"
|
224
|
-
weights: "400,400i,600,600i"
|
225
|
-
- name: "Fira Sans Condensed"
|
226
|
-
```
|
227
|
-
|
228
|
-
### Text
|
229
|
-
|
230
|
-
To change text found throughout the theme add the following to your
|
231
|
-
[`/_data/theme.yml`](_data/theme.yml) file and customize as necessary.
|
232
|
-
|
233
|
-
```yaml
|
234
|
-
t:
|
235
|
-
skip_links: "Skip links"
|
236
|
-
skip_primary_nav: "Skip to primary navigation"
|
237
|
-
skip_content: "Skip to content"
|
238
|
-
skip_footer: "Skip to footer"
|
239
|
-
menu: "Menu"
|
240
|
-
home: "Home"
|
241
|
-
newer: "Newer"
|
242
|
-
older: "Older"
|
243
|
-
email: "Email"
|
244
|
-
subscribe: "Subscribe"
|
245
|
-
read_more: "Read More"
|
246
|
-
posts: "Posts"
|
247
|
-
page: "Page"
|
248
|
-
of: "of"
|
249
|
-
min_read: "min read"
|
250
|
-
present: "Present"
|
251
|
-
```
|
252
|
-
|
253
|
-
### Navigation
|
254
|
-
|
255
|
-
By default all internal pages with a `title` will be added to the "off-canvas"
|
256
|
-
menu. For more granular control and sorting of these menu links:
|
257
|
-
|
258
|
-
1. Create a custom list to override the default setting by adding a
|
259
|
-
`navigation_pages` array to your [`/_data/theme.yml`](_data/theme.yml) file.
|
260
|
-
|
261
|
-
2. Add raw page paths in the order you'd like:
|
262
|
-
|
263
|
-
```yaml
|
264
|
-
navigation_pages:
|
265
|
-
- about.md
|
266
|
-
- cv.md
|
267
|
-
```
|
268
|
-
|
269
|
-
Each menu link's title and URL will be populated based on their `title` and
|
270
|
-
`permalink` respectively.
|
271
|
-
|
272
|
-
### Pagination
|
273
|
-
|
274
|
-
Break up the main listing of posts into smaller lists and display them over
|
275
|
-
multiple pages by [enabling pagination](http://jekyllrb.com/docs/pagination/).
|
276
|
-
|
277
|
-
1. Include the `jekyll-paginate` plugin in your `Gemfile`.
|
278
|
-
|
279
|
-
```ruby
|
280
|
-
group :jekyll_plugins do
|
281
|
-
gem "jekyll-paginate"
|
282
|
-
end
|
283
|
-
```
|
284
|
-
|
285
|
-
2. Add `jekyll-paginate` to `gems` array in your `_config.yml` file and the
|
286
|
-
following pagination settings:
|
287
|
-
|
288
|
-
```yaml
|
289
|
-
paginate: 5 # amount of posts to show per page
|
290
|
-
paginate_path: /page:num/
|
291
|
-
```
|
292
|
-
|
293
|
-
3. Create `index.html` (or rename `index.md`) in the root of your project and
|
294
|
-
add the following front matter:
|
295
|
-
|
296
|
-
```yaml
|
297
|
-
layout: home
|
298
|
-
paginate: true
|
299
|
-
```
|
300
|
-
|
301
|
-
### Author
|
302
|
-
|
303
|
-
Author information is used as meta data for post "by lines" and propagates the
|
304
|
-
`creator` field of Twitter summary cards with the following front matter in
|
305
|
-
`_config.yml`:
|
306
|
-
|
307
|
-
```yaml
|
308
|
-
author:
|
309
|
-
name: John Doe
|
310
|
-
twitter: johndoetwitter
|
311
|
-
picture: /assets/images/johndoe.png
|
312
|
-
```
|
313
|
-
|
314
|
-
Site-wide author information can be overridden in a document's front matter in
|
315
|
-
the same way:
|
316
|
-
|
317
|
-
```yaml
|
318
|
-
author:
|
319
|
-
name: Jane Doe
|
320
|
-
twitter: janedoetwitter
|
321
|
-
picture: /assets/images/janedoe.png
|
322
|
-
```
|
323
|
-
|
324
|
-
Or by specifying a corresponding key in the document's front matter, that
|
325
|
-
exists in `site.data.authors`. E.g., you have the following in the document's
|
326
|
-
front matter:
|
327
|
-
|
328
|
-
```yaml
|
329
|
-
author: megaman
|
330
|
-
```
|
331
|
-
|
332
|
-
And you have the following in `_data/authors.yml`:
|
333
|
-
|
334
|
-
```yaml
|
335
|
-
megaman:
|
336
|
-
name: Mega Man
|
337
|
-
twitter: megamantwitter
|
338
|
-
picture: /assets/images/megaman.png
|
339
|
-
|
340
|
-
drlight:
|
341
|
-
name: Dr. Light
|
342
|
-
twitter: drlighttwitter
|
343
|
-
picture: /assets/images/drlight.png
|
344
|
-
```
|
345
|
-
|
346
|
-
Currently `author.picture` is only used in `layout: about`. Recommended size is
|
347
|
-
`300 x 300` pixels.
|
348
|
-
|
349
|
-
### Reading Time
|
350
|
-
|
351
|
-
To enable reading time counts add `read_time: true` to a post or page's YAML
|
352
|
-
Front Matter.
|
353
|
-
|
354
|
-
### Comments (via Disqus)
|
355
|
-
|
356
|
-
Optionally, if you have a [Disqus](https://disqus.com/) account, you can show a
|
357
|
-
comments section below each post.
|
358
|
-
|
359
|
-
To enable Disqus comments, add your [Disqus shortname](https://help.disqus.com/customer/portal/articles/466208) to your project's `_config.yml` file:
|
360
|
-
|
361
|
-
```yaml
|
362
|
-
disqus:
|
363
|
-
shortname: my_disqus_shortname
|
364
|
-
```
|
365
|
-
|
366
|
-
Comments are enabled by default and will only appear in production when built
|
367
|
-
with the following [environment value](http://jekyllrb.com/docs/configuration/#specifying-a-jekyll-environment-at-build-time):
|
368
|
-
`JEKYLL_ENV=production`
|
369
|
-
|
370
|
-
If you don't want to display comments for a particular post you can disable
|
371
|
-
them by adding `comments: false` to that post's front matter.
|
372
|
-
|
373
|
-
### Google Analytics
|
374
|
-
|
375
|
-
To enable Google Analytics, add your [tracking ID](https://support.google.com/analytics/answer/1032385)
|
376
|
-
to `_config.yml` like so:
|
377
|
-
|
378
|
-
```yaml
|
379
|
-
google_analytics: UA-NNNNNNNN-N
|
380
|
-
```
|
381
|
-
|
382
|
-
Similar to comments, the Google Analytics tracking script will only appear in
|
383
|
-
production when using the following environment value: `JEKYLL_ENV=production`.
|
384
|
-
|
385
|
-
## Layouts
|
386
|
-
|
387
|
-
This theme provides the following layouts, which you can use by setting the
|
388
|
-
`layout` [Front Matter](https://jekyllrb.com/docs/frontmatter/) on each page,
|
389
|
-
like so:
|
390
|
-
|
391
|
-
```yaml
|
392
|
-
---
|
393
|
-
layout: name
|
394
|
-
---
|
395
|
-
```
|
396
|
-
|
397
|
-
### `layout: default`
|
398
|
-
|
399
|
-
This layout handles all of the basic page scaffolding placing the page content
|
400
|
-
between the masthead and footer elements. All other layouts inherit this one
|
401
|
-
and provide additional styling and features inside of the `{{ content }}` block.
|
402
|
-
|
403
|
-
### `layout: post`
|
404
|
-
|
405
|
-
This layout accommodates the following front matter:
|
406
|
-
|
407
|
-
```yaml
|
408
|
-
# optional alternate title to replace page.title at the top of the page
|
409
|
-
alt_title: "Basically Basic"
|
410
|
-
|
411
|
-
# optional sub-title below the page title
|
412
|
-
sub_title: "The name says it all"
|
413
|
-
|
414
|
-
# optional intro text below titles, Markdown allowed
|
415
|
-
introduction: |
|
416
|
-
Basically Basic is a Jekyll theme meant to be a substitute for the default --- [Minima](https://github.com/jekyll/minima). Conventions and features found in Minima are fully supported by **Basically Basic**.
|
417
|
-
|
418
|
-
# optional call to action links
|
419
|
-
actions:
|
420
|
-
- label: "Learn More"
|
421
|
-
icon: github # references name of svg icon, see full list below
|
422
|
-
url: "http://url-goes-here.com"
|
423
|
-
- label: "Download"
|
424
|
-
icon: download # references name of svg icon, see full list below
|
425
|
-
url: "http://url-goes-here.com"
|
426
|
-
|
427
|
-
image: # URL to a hero image associated with the post (e.g., /assets/page-pic.jpg)
|
428
|
-
|
429
|
-
# post specific author data if different from what is set in _config.yml
|
430
|
-
author:
|
431
|
-
name: John Doe
|
432
|
-
twitter: johndoetwitter
|
433
|
-
|
434
|
-
comments: false # disable comments on this post
|
435
|
-
```
|
436
|
-
|
437
|
-
### `layout: page`
|
438
|
-
|
439
|
-
Visually this layout looks and acts the same as `layout: post`, with two minor
|
440
|
-
differences.
|
441
|
-
|
442
|
-
- Author "by line" and publish date are omitted.
|
443
|
-
- Disqus comments are omitted.
|
444
|
-
|
445
|
-
### `layout: home`
|
446
|
-
|
447
|
-
This layout accommodates the same front matter as `layout: page`, with the
|
448
|
-
addition of the following:
|
449
|
-
|
450
|
-
```yaml
|
451
|
-
paginate: true # enables pagination loop, see section above for additional setup
|
452
|
-
```
|
453
|
-
|
454
|
-
### `layout: about`
|
455
|
-
|
456
|
-
This layout accommodates the same front matter as `layout: page`, with the
|
457
|
-
addition of the following to display an author picture:
|
458
|
-
|
459
|
-
```yaml
|
460
|
-
author:
|
461
|
-
name: John Doe
|
462
|
-
picture: /assets/images/johndoe.png
|
463
|
-
```
|
464
|
-
|
465
|
-
Recommended `picture` size is approximately `300 x 300` pixels. If `author`
|
466
|
-
object is not explicitly set in the about page's front matter the theme
|
467
|
-
will default to the value set in `_config.yml`.
|
468
|
-
|
469
|
-
If blank there no image will appear.
|
470
|
-
|
471
|
-
### `layout: cv`
|
472
|
-
|
473
|
-
This layout accommodates the same front matter as `layout: page`. It
|
474
|
-
leverages a [JSON-based file standard](https://jsonresume.org/schema/) for
|
475
|
-
resume data to conveniently render a curriculum vitæ or resume painlessly.
|
476
|
-
|
477
|
-
Simply use JSON Resume's [in-browser resume builder](http://registry.jsonresume.org/)
|
478
|
-
to export a JSON file and save to your project as `_data/cv.json`.
|
479
|
-
|
480
|
-
## Customization
|
481
|
-
|
482
|
-
The default structure, style, and scripts of this theme can be overridden and
|
483
|
-
customized in the following two ways.
|
484
|
-
|
485
|
-
### Overriding Includes and Layouts
|
486
|
-
|
487
|
-
Theme defaults can be [overridden](http://jekyllrb.com/docs/themes/#overriding-theme-defaults)
|
488
|
-
by placing a file with the same name into your project's `_includes` or
|
489
|
-
`_layouts` directory. For instance:
|
490
|
-
|
491
|
-
- To specify a custom style path or meta data to the [`_includes/head.html `](_includes/head.html)
|
492
|
-
file, create an `_includes` directory in your project, copy
|
493
|
-
`_includes/head.html` from Basically Basic's gem folder to
|
494
|
-
`<your_project>/_includes` and start editing that file.
|
495
|
-
|
496
|
-
**ProTip:** to locate the theme's files on your computer run
|
497
|
-
`bundle show jekyll-theme-basically-basic`. This returns the location of the
|
498
|
-
gem-based theme files.
|
499
|
-
|
500
|
-
### Customizing Sass (SCSS)
|
501
|
-
|
502
|
-
To override the default [Sass](http://sass-lang.com/guide) (located in theme's
|
503
|
-
`_sass` directory), do one of the following:
|
504
|
-
|
505
|
-
1. Copy directly from the Basically Basic gem
|
506
|
-
|
507
|
-
- Go to your local Basically Basic gem installation directory (run
|
508
|
-
`bundle show jekyll-theme-basically-basic` to get the path to it).
|
509
|
-
- Copy the contents of `/assets/stylesheets/main.scss` from there to
|
510
|
-
`<your_project>`.
|
511
|
-
- Customize
|
512
|
-
|
513
|
-
2. Copy from this repo.
|
514
|
-
|
515
|
-
- Copy the contents of [assets/stylesheets/main.scss](assets/stylesheets/main.scss)
|
516
|
-
to `<your_project>`.
|
517
|
-
- Customize
|
518
|
-
|
519
|
-
**Note:** To make more extensive changes and customize the Sass partials bundled
|
520
|
-
in the gem. You will need to copy the complete contents the `_sass` directory to
|
521
|
-
`<your_project>` due to the way Jekyll currently reads those files.
|
522
|
-
|
523
|
-
To make basic tweaks to theme's style Sass variables can be overridden by adding
|
524
|
-
to `<your_project>/assets/stylesheets/main.scss`. For instance, to change the
|
525
|
-
accent color used throughout the theme add:
|
526
|
-
|
527
|
-
```scss
|
528
|
-
$accent-color: red;
|
529
|
-
```
|
530
|
-
|
531
|
-
Before any `@import` lines.
|
532
|
-
|
533
|
-
### Customizing JavaScript
|
534
|
-
|
535
|
-
To override the default JavaScript bundled in the theme, do one of the following:
|
536
|
-
|
537
|
-
1. Copy directly from the Basically Basic gem
|
538
|
-
|
539
|
-
- Go to your local Basically Basic gem installation directory (run
|
540
|
-
`bundle show jekyll-theme-basically-basic` to get the path to it).
|
541
|
-
- Copy the contents of `/assets/javascripts/main.js` from there to
|
542
|
-
`<your_project>`.
|
543
|
-
- Customize what you want inside `<your_project>/assets/javascripts/main.js`.
|
544
|
-
|
545
|
-
2. Copy from this repo.
|
546
|
-
|
547
|
-
- Copy the contents of [assets/javascripts/main.js](assets/javascripts/main.js)
|
548
|
-
to `<your_project>`.
|
549
|
-
- Customize what you want inside `<your_project>/assets/javascripts/main.js`.
|
550
|
-
|
551
|
-
### SVG Icons
|
552
|
-
|
553
|
-
The theme uses social network logos and other iconography saved as SVGs for
|
554
|
-
performance and flexibility. Said SVGs are located in the `_includes` directory
|
555
|
-
and prefixed with `icon-`. Each icon has been sized and designed to fit a
|
556
|
-
`16 x 16` viewbox and optimized with [SVGO](https://github.com/svg/svgo).
|
557
|
-
|
558
|
-
| Icon | Filename |
|
559
|
-
| --- | --- |
|
560
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-arrow-left.svg" width="16" height="16"> | icon-arrow-left.svg |
|
561
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-arrow-right.svg" width="16" height="16"> | icon-arrow-right.svg |
|
562
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-bitbucket.svg" width="16" height="16"> | icon-bitbucket.svg |
|
563
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-calendar.svg" width="16" height="16"> | icon-calendar.svg |
|
564
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-codepen.svg" width="16" height="16"> | icon-codepen.svg |
|
565
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-download.svg" width="16" height="16"> | icon-download.svg |
|
566
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-dribbble.svg" width="16" height="16"> | icon-dribbble.svg |
|
567
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-email.svg" width="16" height="16"> | icon-email.svg |
|
568
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-facebook.svg" width="16" height="16"> | icon-facebook.svg |
|
569
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-flickr.svg" width="16" height="16"> | icon-flickr.svg |
|
570
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-github.svg" width="16" height="16"> | icon-github.svg |
|
571
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-gitlab.svg" width="16" height="16"> | icon-gitlab.svg |
|
572
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-googleplus.svg" width="16" height="16"> | icon-googleplus.svg |
|
573
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-instagram.svg" width="16" height="16"> | icon-instagram.svg |
|
574
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-lastfm.svg" width="16" height="16"> | icon-lastfm.svg |
|
575
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-linkedin.svg" width="16" height="16"> | icon-linkedin.svg |
|
576
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-pdf.svg" width="16" height="16"> | icon-pdf.svg |
|
577
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-pinterest.svg" width="16" height="16"> | icon-pinterest.svg |
|
578
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-rss.svg" width="16" height="16"> | icon-rss.svg |
|
579
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-soundcloud.svg" width="16" height="16"> | icon-soundcloud.svg |
|
580
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-stackoverflow.svg" width="16" height="16"> | icon-stackoverflow.svg |
|
581
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-stopwatch.svg" width="16" height="16"> | icon-stopwatch.svg |
|
582
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-tumblr.svg" width="16" height="16"> | icon-tumblr.svg |
|
583
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-twitter.svg" width="16" height="16"> | icon-twitter.svg |
|
584
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-xing.svg" width="16" height="16"> | icon-xing.svg |
|
585
|
-
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-youtube.svg" width="16" height="16"> | icon-youtube.svg |
|
586
|
-
|
587
|
-
Fill colors are defined in the `_sass/basically-basic/_icons.scss` partial and
|
588
|
-
set with `.icon-name` where class name matches the corresponding icon.
|
589
|
-
|
590
|
-
For example the Twitter icon is given a fill color of `#1da1f2` like so:
|
591
|
-
|
592
|
-
```html
|
593
|
-
<span class="icon icon--twitter">{% include icon-twitter.svg %}</span>
|
594
|
-
```
|
595
|
-
|
596
|
-
Alongside the SVG assets, there are icon helper includes to aid in generating
|
597
|
-
social network links.
|
598
|
-
|
599
|
-
| Include Parameter | Description | Required |
|
600
|
-
| ----------------- | ---------------------------------| ----------------------- |
|
601
|
-
| `username` | Username on given social network | **Required** |
|
602
|
-
| `label` | Text used for hyperlink | Optional, defaults to `username` |
|
603
|
-
|
604
|
-
For example, the following `icon-github.html` include:
|
605
|
-
|
606
|
-
```liquid
|
607
|
-
{% include icon-github.html username=jekyll label='GitHub' %}
|
608
|
-
```
|
609
|
-
|
610
|
-
Will output the following HTML:
|
611
|
-
|
612
|
-
```html
|
613
|
-
<a href="https://github.com/jekyll">
|
614
|
-
<span class="icon icon--github"><svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M8 0C3.58 0 0 3.582 0 8c0 3.535 2.292 6.533 5.47 7.59.4.075.547-.172.547-.385 0-.19-.007-.693-.01-1.36-2.226.483-2.695-1.073-2.695-1.073-.364-.924-.89-1.17-.89-1.17-.725-.496.056-.486.056-.486.803.056 1.225.824 1.225.824.714 1.223 1.873.87 2.33.665.072-.517.278-.87.507-1.07-1.777-.2-3.644-.888-3.644-3.953 0-.873.31-1.587.823-2.147-.09-.202-.36-1.015.07-2.117 0 0 .67-.215 2.2.82.64-.178 1.32-.266 2-.27.68.004 1.36.092 2 .27 1.52-1.035 2.19-.82 2.19-.82.43 1.102.16 1.915.08 2.117.51.56.82 1.274.82 2.147 0 3.073-1.87 3.75-3.65 3.947.28.24.54.73.54 1.48 0 1.07-.01 1.93-.01 2.19 0 .21.14.46.55.38C13.71 14.53 16 11.53 16 8c0-4.418-3.582-8-8-8"></path></svg></span>
|
615
|
-
<span class="label">GitHub</span>
|
616
|
-
</a>
|
617
|
-
```
|
618
|
-
|
619
|
-
### Customizing Sidebar Content
|
620
|
-
|
621
|
-
---
|
622
|
-
|
623
|
-
## Development
|
624
|
-
|
625
|
-
To set up your environment to develop this theme:
|
626
|
-
|
627
|
-
1. Clone this repo
|
628
|
-
2. `cd` into `/example` and run `bundle install`.
|
629
|
-
|
630
|
-
To test the theme the locally as you make changes to it:
|
631
|
-
|
632
|
-
1. `cd` into the root folder of the repo (e.g. `jekyll-theme-basically-basic`).
|
633
|
-
2. Run `bundle exec rake preview` and open your browser to
|
634
|
-
`http://localhost:4000/example/`.
|
635
|
-
|
636
|
-
This starts a Jekyll server using the theme's files and contents of the
|
637
|
-
`example/` directory. As modifications are made, refresh your browser to see
|
638
|
-
any changes.
|
639
|
-
|
640
|
-
## Contributing
|
641
|
-
|
642
|
-
Found a typo in the documentation? Interested in adding a feature or
|
643
|
-
[fixing a bug][issues]? Then by all means [submit an issue][new-issue] or take a
|
644
|
-
stab at submitting a [pull request][using-pull-requests]. If this is your first
|
645
|
-
pull request, it may be helpful to read up on the [GitHub Flow][github-flow].
|
646
|
-
|
647
|
-
[issues]: https://github.com/mmistakes/jekyll-theme-basically-basic/issues
|
648
|
-
[new-issue]: https://github.com/mmistakes/jekyll-theme-basically-basic/issues/new
|
649
|
-
[using-pull-requests]: https://help.github.com/articles/using-pull-requests/
|
650
|
-
[github-flow]: https://guides.github.com/introduction/flow/
|
651
|
-
|
652
|
-
### Pull Requests
|
653
|
-
|
654
|
-
When submitting a pull request:
|
655
|
-
|
656
|
-
1. Clone the repo.
|
657
|
-
2. Create a branch off of `master` and give it a meaningful name (e.g.
|
658
|
-
`my-awesome-new-feature`) and describe the feature or fix.
|
659
|
-
3. Open a pull request on GitHub.
|
660
|
-
|
661
|
-
Sample pages can be found in the [`/docs`](docs) and [`/example`](/example)
|
662
|
-
folders if you'd like to tackle any "low-hanging fruit" like fixing typos, bad
|
663
|
-
grammar, etc.
|
664
|
-
|
665
|
-
---
|
666
|
-
|
667
|
-
## Credits
|
668
|
-
|
669
|
-
### Creator
|
670
|
-
|
671
|
-
**Michael Rose**
|
672
|
-
|
673
|
-
- <https://mademistakes.com>
|
674
|
-
- <https://twitter.com/mmistakes>
|
675
|
-
- <https://github.com/mmistakes>
|
676
|
-
|
677
|
-
### Icons + Demo Images:
|
678
|
-
|
679
|
-
- [Simple Icons](https://simpleicons.org/)
|
680
|
-
- [Noun Project](https://thenounproject.com)
|
681
|
-
- [Unsplash](https://unsplash.com/)
|
682
|
-
|
683
|
-
### Other:
|
684
|
-
|
685
|
-
- [Jekyll](http://jekyllrb.com/)
|
686
|
-
- [Susy](http://susy.oddbird.net/)
|
687
|
-
- [Breakpoint](http://breakpoint-sass.com/)
|
688
|
-
|
689
|
-
---
|
690
|
-
|
691
|
-
## License
|
692
|
-
|
693
|
-
The MIT License (MIT)
|
694
|
-
|
695
|
-
Copyright (c) 2017 Michael Rose
|
696
|
-
|
697
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
698
|
-
of this software and associated documentation files (the "Software"), to deal
|
699
|
-
in the Software without restriction, including without limitation the rights
|
700
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
701
|
-
copies of the Software, and to permit persons to whom the Software is
|
702
|
-
furnished to do so, subject to the following conditions:
|
703
|
-
|
704
|
-
The above copyright notice and this permission notice shall be included in all
|
705
|
-
copies or substantial portions of the Software.
|
706
|
-
|
707
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
708
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
709
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
710
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
711
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
712
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
713
|
-
SOFTWARE.
|
1
|
+
# [Basically Basic Jekyll Theme][1]
|
2
|
+
|
3
|
+
[![Gem](https://img.shields.io/gem/v/jekyll-theme-basically-basic.svg?style=flat-square)](https://rubygems.org/gems/jekyll-theme-basically-basic)
|
4
|
+
[![license](https://img.shields.io/github/license/mmistakes/jekyll-theme-basically-basic.svg?style=flat-square)](LICENSE.md)
|
5
|
+
[![Code Climate](https://img.shields.io/codeclimate/github/mmistakes/jekyll-theme-basically-basic.svg?style=flat-square)](https://codeclimate.com/github/mmistakes/jekyll-theme-basically-basic)
|
6
|
+
|
7
|
+
Basically Basic is a [Jekyll theme](https://jekyllrb.com/docs/themes/) meant as
|
8
|
+
a substitute for the default --- [Minima](https://github.com/jekyll/minima).
|
9
|
+
Conventions and features found there are fully supported by **Basically Basic**,
|
10
|
+
with a few enhancements thrown in for good measure:
|
11
|
+
|
12
|
+
- Clean responsive design with [six customizable skins](#skin)
|
13
|
+
- Curriculum Vitæ/Resume layout powered by [JSON data](http://registry.jsonresume.org/)
|
14
|
+
- About page layout
|
15
|
+
- Disqus Comments and Google Analytics support
|
16
|
+
- SEO best practices via [Jekyll SEO Tag](https://github.com/jekyll/jekyll-seo-tag/)
|
17
|
+
|
18
|
+
[![Basically Basic live preview][2]][1]
|
19
|
+
|
20
|
+
[1]: https://mmistakes.github.io/jekyll-theme-basically-basic/
|
21
|
+
[2]: https://cloud.githubusercontent.com/assets/1376749/24117647/6dede894-0d81-11e7-9c2c-f19bea45e219.jpg (live preview)
|
22
|
+
|
23
|
+
## Table of Contents
|
24
|
+
|
25
|
+
1. [Installation](#installation)
|
26
|
+
1. [Ruby Gem Method](#ruby-gem-method)
|
27
|
+
2. [GitHub Pages Compatible Method](#github-pages-compatible-method)
|
28
|
+
1. [Remove the Unnecessary](#remove-the-unnecessary)
|
29
|
+
2. [Structure](#structure)
|
30
|
+
1. [Starting Fresh](#starting-fresh)
|
31
|
+
2. [Starting from jekyll new](#starting-from-jekyll-new)
|
32
|
+
3. [Configuration](#configuration)
|
33
|
+
1. [Skin](#skin)
|
34
|
+
2. [Google Fonts](#google-fonts)
|
35
|
+
3. [Text](#text)
|
36
|
+
4. [Navigation](#navigation)
|
37
|
+
5. [Pagination](#pagination)
|
38
|
+
6. [Author](#author)
|
39
|
+
7. [Reading Time](#reading-time)
|
40
|
+
8. [Comments (via Disqus)](#comments-via-disqus)
|
41
|
+
9. [Google Analytics](#google-analytics)
|
42
|
+
4. [Layouts](#layouts)
|
43
|
+
1. [Default](#layout-default)
|
44
|
+
2. [Post](#layout-post)
|
45
|
+
3. [Page](#layout-page)
|
46
|
+
4. [Home](#layout-home)
|
47
|
+
5. [About](#layout-about)
|
48
|
+
6. [Curriculum Vitæ/Resume](#layout-cv)
|
49
|
+
5. [Customization](#customization)
|
50
|
+
1. [Overriding Includes and Layouts](#overriding-includes-and-layouts)
|
51
|
+
2. [Customizing Sass (SCSS)](#customizing-sass-scss)
|
52
|
+
3. [Customizing JavaScript](#customizing-javascript)
|
53
|
+
4. [SVG Icons](#svg-icons)
|
54
|
+
5. [Customizing Sidebar Content](#customizing-sidebar-content)
|
55
|
+
6. [Development](#development)
|
56
|
+
7. [Contributing](#contributing)
|
57
|
+
1. [Pull Requests](#pull-requests)
|
58
|
+
8. [Credits](#credits)
|
59
|
+
|
60
|
+
## Installation
|
61
|
+
|
62
|
+
If you're running Jekyll v3.3+ and self-hosting you can quickly install the
|
63
|
+
theme as Ruby gem. If you're hosting with GitHub Pages you'll have to use the
|
64
|
+
"repo fork" method or directly copy all of the theme files (see
|
65
|
+
[structure](#structure) below) into your project.
|
66
|
+
|
67
|
+
### Ruby Gem Method
|
68
|
+
|
69
|
+
1. Install the theme as a Ruby Gem by adding it to your `Gemfile` like so:
|
70
|
+
|
71
|
+
```ruby
|
72
|
+
gem "jekyll-theme-basically-basic"
|
73
|
+
```
|
74
|
+
|
75
|
+
2. Fetch and update your bundled gems by running the following
|
76
|
+
[Bundler](http://bundler.io/) command:
|
77
|
+
|
78
|
+
```bash
|
79
|
+
bundle
|
80
|
+
```
|
81
|
+
|
82
|
+
3. Set the `theme` in your project's Jekyll configuration, `_config.yml`:
|
83
|
+
|
84
|
+
```yaml
|
85
|
+
theme: jekyll-theme-basically-basic
|
86
|
+
```
|
87
|
+
|
88
|
+
### GitHub Pages Compatible Method
|
89
|
+
|
90
|
+
Fork the [Basically Basic repo](https://github.com/mmistakes/jekyll-theme-basically-basic/fork),
|
91
|
+
then rename it to **USERNAME.github.io** --- replacing **USERNAME** with your
|
92
|
+
GitHub username.
|
93
|
+
|
94
|
+
**Note:** Your Jekyll site should be viewable immediately at
|
95
|
+
<http://USERNAME.github.io>. If it's not, you can force a rebuild by
|
96
|
+
**configuring your site** (see below for more details).
|
97
|
+
|
98
|
+
Replace the contents of `Gemfile` found in the root of your Jekyll site with
|
99
|
+
the following:
|
100
|
+
|
101
|
+
```ruby
|
102
|
+
source "https://rubygems.org"
|
103
|
+
|
104
|
+
gem "github-pages", group: :jekyll_plugins
|
105
|
+
```
|
106
|
+
|
107
|
+
Then run `bundle update` and verify that the [GitHub Pages gem](https://github.com/github/pages-gem)
|
108
|
+
and its dependencies install properly.
|
109
|
+
|
110
|
+
#### Remove the Unnecessary
|
111
|
+
|
112
|
+
If you forked or downloaded the `jekyll-theme-basically-basic` repo you can
|
113
|
+
safely remove the following files and folders:
|
114
|
+
|
115
|
+
- `.codeclimate.yml`
|
116
|
+
- `.editorconfig`
|
117
|
+
- `.gitattributes`
|
118
|
+
- `.github`
|
119
|
+
- `.scss-lint.yml`
|
120
|
+
- `CHANGELOG.md`
|
121
|
+
- `jekyll-theme-basically-basic.gemspec`
|
122
|
+
- `LICENSE.md`
|
123
|
+
- `Rakefile`
|
124
|
+
- `README.md`
|
125
|
+
- `screenshot.png`
|
126
|
+
- `/docs`
|
127
|
+
- `/example`
|
128
|
+
|
129
|
+
## Structure
|
130
|
+
|
131
|
+
Layouts, includes, Sass partials, and data files are all placed in their default
|
132
|
+
locations. Stylesheets and scripts in `assets`, and a few development related
|
133
|
+
files in the project's root directory.
|
134
|
+
|
135
|
+
**Please note:** If you installed Basically Basic via the Ruby Gem method, theme
|
136
|
+
files found in `/_layouts`, `/_includes`, `/_sass`, and `/assets` will be
|
137
|
+
missing. This is normal as they are bundled with the [`jekyll-theme-basically-basic`](https://rubygems.org/gems/jekyll-theme-basically-basic) gem.
|
138
|
+
|
139
|
+
```bash
|
140
|
+
jekyll-theme-basically-basic
|
141
|
+
├── _data # data files
|
142
|
+
| └── theme.yml # theme settings and custom text
|
143
|
+
├── _includes # theme includes and SVG icons
|
144
|
+
├── _layouts # theme layouts (see below for details)
|
145
|
+
├── _sass # Sass partials
|
146
|
+
├── assets
|
147
|
+
| ├── javascripts
|
148
|
+
| | └── main.js
|
149
|
+
| └── stylesheets
|
150
|
+
| └── main.scss
|
151
|
+
├── _config.yml # sample configuration
|
152
|
+
└── index.md # sample home page (all posts/not paginated)
|
153
|
+
```
|
154
|
+
|
155
|
+
### Starting Fresh
|
156
|
+
|
157
|
+
After creating a `Gemfile` and installing the theme you'll need to add and edit
|
158
|
+
the following files:
|
159
|
+
|
160
|
+
- [`_config.yml`](_config.yml)
|
161
|
+
- [`/_data/theme.yml`](_data/theme.yml)
|
162
|
+
- [`index.md`](index.md)
|
163
|
+
|
164
|
+
**Note:** Consult the [**pagination**](#pagination) documentation below for
|
165
|
+
instructions on how to enable it for the home page.
|
166
|
+
|
167
|
+
### Starting from `jekyll new`
|
168
|
+
|
169
|
+
Using the `jekyll new` command will get you up and running the quickest.
|
170
|
+
|
171
|
+
Edit `_config.yml` and create `_data/theme.yml` as instructed above and you're
|
172
|
+
good to go.
|
173
|
+
|
174
|
+
## Configuration
|
175
|
+
|
176
|
+
Configuration of site-wide elements (`lang`, `title`, `description`, `logo`,
|
177
|
+
`author`, etc.) happens in your project's `_config.yml`. See the
|
178
|
+
[example configuration](example/_config.yml) in this repo for additional
|
179
|
+
reference.
|
180
|
+
|
181
|
+
| | Description |
|
182
|
+
| ------------------ | ------------------------------------------------------------------------- |
|
183
|
+
| `lang` | Used to indicate the language of text (e.g., en-US, en-GB, fr) |
|
184
|
+
| `title` | Your site's title (e.g., Dungan's Awesome Site) |
|
185
|
+
| `description` | Short site description (e.g., A blog about grasshopper mash) |
|
186
|
+
| `url` | The full URL to your site (e.g., https://groverloaf.org) |
|
187
|
+
| `author` | Global author information (see below) |
|
188
|
+
| `logo` | Path to a site-wide logo ~100x100px (e.g., /assets/your-company-logo.png) |
|
189
|
+
| `twitter_username` | Site-wide Twitter username, used as a link in sidebar |
|
190
|
+
| `github_username` | Site-wide GitHub username, used as a link in sidebar |
|
191
|
+
|
192
|
+
For more configuration options be sure to consult the documentation for:
|
193
|
+
[**jekyll-seo-tag**][jekyll-seo-tag], [**jekyll-feed**][jekyll-feed],
|
194
|
+
[**jekyll-paginate**][jekyll-paginate], and [**jekyll-sitemap**][jekyll-sitemap].
|
195
|
+
|
196
|
+
[jekyll-seo-tag]: https://github.com/jekyll/jekyll-seo-tag
|
197
|
+
[jekyll-feed]: https://github.com/jekyll/jekyll-feed
|
198
|
+
[jekyll-paginate]: https://github.com/jekyll/jekyll-paginate
|
199
|
+
[jekyll-sitemap]: https://github.com/jekyll/jekyll-sitemap
|
200
|
+
|
201
|
+
### Skin
|
202
|
+
|
203
|
+
This theme comes in six different skins (color variations). To change skins add
|
204
|
+
one of the following to your [`/_data/theme.yml`](_data/theme.yml) file:
|
205
|
+
|
206
|
+
| `skin: default` | `skin: night` | `skin: plum` |
|
207
|
+
| --- | --- | --- |
|
208
|
+
| ![default-skin](https://cloud.githubusercontent.com/assets/1376749/24115744/c0618c90-0d7a-11e7-8e2d-ec70f9db0c1b.png) | ![night-skin](https://cloud.githubusercontent.com/assets/1376749/24115770/d61127f8-0d7a-11e7-9158-986bee2be8e7.png) | ![plum-skin](https://cloud.githubusercontent.com/assets/1376749/24115778/db523a0e-0d7a-11e7-9452-8692b736d67e.png) |
|
209
|
+
|
210
|
+
| `skin: sea` | `skin: soft` | `skin: steel` |
|
211
|
+
| --- | --- | --- |
|
212
|
+
| ![sea-skin](https://cloud.githubusercontent.com/assets/1376749/24115788/e27d818a-0d7a-11e7-8c56-2480e9ae83fb.png) | ![soft-skin](https://cloud.githubusercontent.com/assets/1376749/24115790/e6e548e8-0d7a-11e7-8e2d-d8053e8befd1.png) | ![steel-skin](https://cloud.githubusercontent.com/assets/1376749/24115799/eb2108e8-0d7a-11e7-8cc3-a6f22e4082ee.png) |
|
213
|
+
|
214
|
+
### Google Fonts
|
215
|
+
|
216
|
+
This theme allows you to easily use [Google Fonts](https://fonts.google.com/)
|
217
|
+
throughout the theme. Simply add the following to your
|
218
|
+
[`/_data/theme.yml`](_data/theme.yml), replacing the font `name` and `weights`
|
219
|
+
accordingly.
|
220
|
+
|
221
|
+
```yaml
|
222
|
+
google_fonts:
|
223
|
+
- name: "Fira Sans"
|
224
|
+
weights: "400,400i,600,600i"
|
225
|
+
- name: "Fira Sans Condensed"
|
226
|
+
```
|
227
|
+
|
228
|
+
### Text
|
229
|
+
|
230
|
+
To change text found throughout the theme add the following to your
|
231
|
+
[`/_data/theme.yml`](_data/theme.yml) file and customize as necessary.
|
232
|
+
|
233
|
+
```yaml
|
234
|
+
t:
|
235
|
+
skip_links: "Skip links"
|
236
|
+
skip_primary_nav: "Skip to primary navigation"
|
237
|
+
skip_content: "Skip to content"
|
238
|
+
skip_footer: "Skip to footer"
|
239
|
+
menu: "Menu"
|
240
|
+
home: "Home"
|
241
|
+
newer: "Newer"
|
242
|
+
older: "Older"
|
243
|
+
email: "Email"
|
244
|
+
subscribe: "Subscribe"
|
245
|
+
read_more: "Read More"
|
246
|
+
posts: "Posts"
|
247
|
+
page: "Page"
|
248
|
+
of: "of"
|
249
|
+
min_read: "min read"
|
250
|
+
present: "Present"
|
251
|
+
```
|
252
|
+
|
253
|
+
### Navigation
|
254
|
+
|
255
|
+
By default all internal pages with a `title` will be added to the "off-canvas"
|
256
|
+
menu. For more granular control and sorting of these menu links:
|
257
|
+
|
258
|
+
1. Create a custom list to override the default setting by adding a
|
259
|
+
`navigation_pages` array to your [`/_data/theme.yml`](_data/theme.yml) file.
|
260
|
+
|
261
|
+
2. Add raw page paths in the order you'd like:
|
262
|
+
|
263
|
+
```yaml
|
264
|
+
navigation_pages:
|
265
|
+
- about.md
|
266
|
+
- cv.md
|
267
|
+
```
|
268
|
+
|
269
|
+
Each menu link's title and URL will be populated based on their `title` and
|
270
|
+
`permalink` respectively.
|
271
|
+
|
272
|
+
### Pagination
|
273
|
+
|
274
|
+
Break up the main listing of posts into smaller lists and display them over
|
275
|
+
multiple pages by [enabling pagination](http://jekyllrb.com/docs/pagination/).
|
276
|
+
|
277
|
+
1. Include the `jekyll-paginate` plugin in your `Gemfile`.
|
278
|
+
|
279
|
+
```ruby
|
280
|
+
group :jekyll_plugins do
|
281
|
+
gem "jekyll-paginate"
|
282
|
+
end
|
283
|
+
```
|
284
|
+
|
285
|
+
2. Add `jekyll-paginate` to `gems` array in your `_config.yml` file and the
|
286
|
+
following pagination settings:
|
287
|
+
|
288
|
+
```yaml
|
289
|
+
paginate: 5 # amount of posts to show per page
|
290
|
+
paginate_path: /page:num/
|
291
|
+
```
|
292
|
+
|
293
|
+
3. Create `index.html` (or rename `index.md`) in the root of your project and
|
294
|
+
add the following front matter:
|
295
|
+
|
296
|
+
```yaml
|
297
|
+
layout: home
|
298
|
+
paginate: true
|
299
|
+
```
|
300
|
+
|
301
|
+
### Author
|
302
|
+
|
303
|
+
Author information is used as meta data for post "by lines" and propagates the
|
304
|
+
`creator` field of Twitter summary cards with the following front matter in
|
305
|
+
`_config.yml`:
|
306
|
+
|
307
|
+
```yaml
|
308
|
+
author:
|
309
|
+
name: John Doe
|
310
|
+
twitter: johndoetwitter
|
311
|
+
picture: /assets/images/johndoe.png
|
312
|
+
```
|
313
|
+
|
314
|
+
Site-wide author information can be overridden in a document's front matter in
|
315
|
+
the same way:
|
316
|
+
|
317
|
+
```yaml
|
318
|
+
author:
|
319
|
+
name: Jane Doe
|
320
|
+
twitter: janedoetwitter
|
321
|
+
picture: /assets/images/janedoe.png
|
322
|
+
```
|
323
|
+
|
324
|
+
Or by specifying a corresponding key in the document's front matter, that
|
325
|
+
exists in `site.data.authors`. E.g., you have the following in the document's
|
326
|
+
front matter:
|
327
|
+
|
328
|
+
```yaml
|
329
|
+
author: megaman
|
330
|
+
```
|
331
|
+
|
332
|
+
And you have the following in `_data/authors.yml`:
|
333
|
+
|
334
|
+
```yaml
|
335
|
+
megaman:
|
336
|
+
name: Mega Man
|
337
|
+
twitter: megamantwitter
|
338
|
+
picture: /assets/images/megaman.png
|
339
|
+
|
340
|
+
drlight:
|
341
|
+
name: Dr. Light
|
342
|
+
twitter: drlighttwitter
|
343
|
+
picture: /assets/images/drlight.png
|
344
|
+
```
|
345
|
+
|
346
|
+
Currently `author.picture` is only used in `layout: about`. Recommended size is
|
347
|
+
`300 x 300` pixels.
|
348
|
+
|
349
|
+
### Reading Time
|
350
|
+
|
351
|
+
To enable reading time counts add `read_time: true` to a post or page's YAML
|
352
|
+
Front Matter.
|
353
|
+
|
354
|
+
### Comments (via Disqus)
|
355
|
+
|
356
|
+
Optionally, if you have a [Disqus](https://disqus.com/) account, you can show a
|
357
|
+
comments section below each post.
|
358
|
+
|
359
|
+
To enable Disqus comments, add your [Disqus shortname](https://help.disqus.com/customer/portal/articles/466208) to your project's `_config.yml` file:
|
360
|
+
|
361
|
+
```yaml
|
362
|
+
disqus:
|
363
|
+
shortname: my_disqus_shortname
|
364
|
+
```
|
365
|
+
|
366
|
+
Comments are enabled by default and will only appear in production when built
|
367
|
+
with the following [environment value](http://jekyllrb.com/docs/configuration/#specifying-a-jekyll-environment-at-build-time):
|
368
|
+
`JEKYLL_ENV=production`
|
369
|
+
|
370
|
+
If you don't want to display comments for a particular post you can disable
|
371
|
+
them by adding `comments: false` to that post's front matter.
|
372
|
+
|
373
|
+
### Google Analytics
|
374
|
+
|
375
|
+
To enable Google Analytics, add your [tracking ID](https://support.google.com/analytics/answer/1032385)
|
376
|
+
to `_config.yml` like so:
|
377
|
+
|
378
|
+
```yaml
|
379
|
+
google_analytics: UA-NNNNNNNN-N
|
380
|
+
```
|
381
|
+
|
382
|
+
Similar to comments, the Google Analytics tracking script will only appear in
|
383
|
+
production when using the following environment value: `JEKYLL_ENV=production`.
|
384
|
+
|
385
|
+
## Layouts
|
386
|
+
|
387
|
+
This theme provides the following layouts, which you can use by setting the
|
388
|
+
`layout` [Front Matter](https://jekyllrb.com/docs/frontmatter/) on each page,
|
389
|
+
like so:
|
390
|
+
|
391
|
+
```yaml
|
392
|
+
---
|
393
|
+
layout: name
|
394
|
+
---
|
395
|
+
```
|
396
|
+
|
397
|
+
### `layout: default`
|
398
|
+
|
399
|
+
This layout handles all of the basic page scaffolding placing the page content
|
400
|
+
between the masthead and footer elements. All other layouts inherit this one
|
401
|
+
and provide additional styling and features inside of the `{{ content }}` block.
|
402
|
+
|
403
|
+
### `layout: post`
|
404
|
+
|
405
|
+
This layout accommodates the following front matter:
|
406
|
+
|
407
|
+
```yaml
|
408
|
+
# optional alternate title to replace page.title at the top of the page
|
409
|
+
alt_title: "Basically Basic"
|
410
|
+
|
411
|
+
# optional sub-title below the page title
|
412
|
+
sub_title: "The name says it all"
|
413
|
+
|
414
|
+
# optional intro text below titles, Markdown allowed
|
415
|
+
introduction: |
|
416
|
+
Basically Basic is a Jekyll theme meant to be a substitute for the default --- [Minima](https://github.com/jekyll/minima). Conventions and features found in Minima are fully supported by **Basically Basic**.
|
417
|
+
|
418
|
+
# optional call to action links
|
419
|
+
actions:
|
420
|
+
- label: "Learn More"
|
421
|
+
icon: github # references name of svg icon, see full list below
|
422
|
+
url: "http://url-goes-here.com"
|
423
|
+
- label: "Download"
|
424
|
+
icon: download # references name of svg icon, see full list below
|
425
|
+
url: "http://url-goes-here.com"
|
426
|
+
|
427
|
+
image: # URL to a hero image associated with the post (e.g., /assets/page-pic.jpg)
|
428
|
+
|
429
|
+
# post specific author data if different from what is set in _config.yml
|
430
|
+
author:
|
431
|
+
name: John Doe
|
432
|
+
twitter: johndoetwitter
|
433
|
+
|
434
|
+
comments: false # disable comments on this post
|
435
|
+
```
|
436
|
+
|
437
|
+
### `layout: page`
|
438
|
+
|
439
|
+
Visually this layout looks and acts the same as `layout: post`, with two minor
|
440
|
+
differences.
|
441
|
+
|
442
|
+
- Author "by line" and publish date are omitted.
|
443
|
+
- Disqus comments are omitted.
|
444
|
+
|
445
|
+
### `layout: home`
|
446
|
+
|
447
|
+
This layout accommodates the same front matter as `layout: page`, with the
|
448
|
+
addition of the following:
|
449
|
+
|
450
|
+
```yaml
|
451
|
+
paginate: true # enables pagination loop, see section above for additional setup
|
452
|
+
```
|
453
|
+
|
454
|
+
### `layout: about`
|
455
|
+
|
456
|
+
This layout accommodates the same front matter as `layout: page`, with the
|
457
|
+
addition of the following to display an author picture:
|
458
|
+
|
459
|
+
```yaml
|
460
|
+
author:
|
461
|
+
name: John Doe
|
462
|
+
picture: /assets/images/johndoe.png
|
463
|
+
```
|
464
|
+
|
465
|
+
Recommended `picture` size is approximately `300 x 300` pixels. If `author`
|
466
|
+
object is not explicitly set in the about page's front matter the theme
|
467
|
+
will default to the value set in `_config.yml`.
|
468
|
+
|
469
|
+
If blank there no image will appear.
|
470
|
+
|
471
|
+
### `layout: cv`
|
472
|
+
|
473
|
+
This layout accommodates the same front matter as `layout: page`. It
|
474
|
+
leverages a [JSON-based file standard](https://jsonresume.org/schema/) for
|
475
|
+
resume data to conveniently render a curriculum vitæ or resume painlessly.
|
476
|
+
|
477
|
+
Simply use JSON Resume's [in-browser resume builder](http://registry.jsonresume.org/)
|
478
|
+
to export a JSON file and save to your project as `_data/cv.json`.
|
479
|
+
|
480
|
+
## Customization
|
481
|
+
|
482
|
+
The default structure, style, and scripts of this theme can be overridden and
|
483
|
+
customized in the following two ways.
|
484
|
+
|
485
|
+
### Overriding Includes and Layouts
|
486
|
+
|
487
|
+
Theme defaults can be [overridden](http://jekyllrb.com/docs/themes/#overriding-theme-defaults)
|
488
|
+
by placing a file with the same name into your project's `_includes` or
|
489
|
+
`_layouts` directory. For instance:
|
490
|
+
|
491
|
+
- To specify a custom style path or meta data to the [`_includes/head.html `](_includes/head.html)
|
492
|
+
file, create an `_includes` directory in your project, copy
|
493
|
+
`_includes/head.html` from Basically Basic's gem folder to
|
494
|
+
`<your_project>/_includes` and start editing that file.
|
495
|
+
|
496
|
+
**ProTip:** to locate the theme's files on your computer run
|
497
|
+
`bundle show jekyll-theme-basically-basic`. This returns the location of the
|
498
|
+
gem-based theme files.
|
499
|
+
|
500
|
+
### Customizing Sass (SCSS)
|
501
|
+
|
502
|
+
To override the default [Sass](http://sass-lang.com/guide) (located in theme's
|
503
|
+
`_sass` directory), do one of the following:
|
504
|
+
|
505
|
+
1. Copy directly from the Basically Basic gem
|
506
|
+
|
507
|
+
- Go to your local Basically Basic gem installation directory (run
|
508
|
+
`bundle show jekyll-theme-basically-basic` to get the path to it).
|
509
|
+
- Copy the contents of `/assets/stylesheets/main.scss` from there to
|
510
|
+
`<your_project>`.
|
511
|
+
- Customize what you want inside `<your_project>/assets/stylesheets/main.scss`.
|
512
|
+
|
513
|
+
2. Copy from this repo.
|
514
|
+
|
515
|
+
- Copy the contents of [assets/stylesheets/main.scss](assets/stylesheets/main.scss)
|
516
|
+
to `<your_project>`.
|
517
|
+
- Customize what you want inside `<your_project/assets/stylesheets/main.scss`.
|
518
|
+
|
519
|
+
**Note:** To make more extensive changes and customize the Sass partials bundled
|
520
|
+
in the gem. You will need to copy the complete contents the `_sass` directory to
|
521
|
+
`<your_project>` due to the way Jekyll currently reads those files.
|
522
|
+
|
523
|
+
To make basic tweaks to theme's style Sass variables can be overridden by adding
|
524
|
+
to `<your_project>/assets/stylesheets/main.scss`. For instance, to change the
|
525
|
+
accent color used throughout the theme add:
|
526
|
+
|
527
|
+
```scss
|
528
|
+
$accent-color: red;
|
529
|
+
```
|
530
|
+
|
531
|
+
Before any `@import` lines.
|
532
|
+
|
533
|
+
### Customizing JavaScript
|
534
|
+
|
535
|
+
To override the default JavaScript bundled in the theme, do one of the following:
|
536
|
+
|
537
|
+
1. Copy directly from the Basically Basic gem
|
538
|
+
|
539
|
+
- Go to your local Basically Basic gem installation directory (run
|
540
|
+
`bundle show jekyll-theme-basically-basic` to get the path to it).
|
541
|
+
- Copy the contents of `/assets/javascripts/main.js` from there to
|
542
|
+
`<your_project>`.
|
543
|
+
- Customize what you want inside `<your_project>/assets/javascripts/main.js`.
|
544
|
+
|
545
|
+
2. Copy from this repo.
|
546
|
+
|
547
|
+
- Copy the contents of [assets/javascripts/main.js](assets/javascripts/main.js)
|
548
|
+
to `<your_project>`.
|
549
|
+
- Customize what you want inside `<your_project>/assets/javascripts/main.js`.
|
550
|
+
|
551
|
+
### SVG Icons
|
552
|
+
|
553
|
+
The theme uses social network logos and other iconography saved as SVGs for
|
554
|
+
performance and flexibility. Said SVGs are located in the `_includes` directory
|
555
|
+
and prefixed with `icon-`. Each icon has been sized and designed to fit a
|
556
|
+
`16 x 16` viewbox and optimized with [SVGO](https://github.com/svg/svgo).
|
557
|
+
|
558
|
+
| Icon | Filename |
|
559
|
+
| --- | --- |
|
560
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-arrow-left.svg" width="16" height="16"> | icon-arrow-left.svg |
|
561
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-arrow-right.svg" width="16" height="16"> | icon-arrow-right.svg |
|
562
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-bitbucket.svg" width="16" height="16"> | icon-bitbucket.svg |
|
563
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-calendar.svg" width="16" height="16"> | icon-calendar.svg |
|
564
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-codepen.svg" width="16" height="16"> | icon-codepen.svg |
|
565
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-download.svg" width="16" height="16"> | icon-download.svg |
|
566
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-dribbble.svg" width="16" height="16"> | icon-dribbble.svg |
|
567
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-email.svg" width="16" height="16"> | icon-email.svg |
|
568
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-facebook.svg" width="16" height="16"> | icon-facebook.svg |
|
569
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-flickr.svg" width="16" height="16"> | icon-flickr.svg |
|
570
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-github.svg" width="16" height="16"> | icon-github.svg |
|
571
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-gitlab.svg" width="16" height="16"> | icon-gitlab.svg |
|
572
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-googleplus.svg" width="16" height="16"> | icon-googleplus.svg |
|
573
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-instagram.svg" width="16" height="16"> | icon-instagram.svg |
|
574
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-lastfm.svg" width="16" height="16"> | icon-lastfm.svg |
|
575
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-linkedin.svg" width="16" height="16"> | icon-linkedin.svg |
|
576
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-pdf.svg" width="16" height="16"> | icon-pdf.svg |
|
577
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-pinterest.svg" width="16" height="16"> | icon-pinterest.svg |
|
578
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-rss.svg" width="16" height="16"> | icon-rss.svg |
|
579
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-soundcloud.svg" width="16" height="16"> | icon-soundcloud.svg |
|
580
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-stackoverflow.svg" width="16" height="16"> | icon-stackoverflow.svg |
|
581
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-stopwatch.svg" width="16" height="16"> | icon-stopwatch.svg |
|
582
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-tumblr.svg" width="16" height="16"> | icon-tumblr.svg |
|
583
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-twitter.svg" width="16" height="16"> | icon-twitter.svg |
|
584
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-xing.svg" width="16" height="16"> | icon-xing.svg |
|
585
|
+
| <img src="https://cdn.rawgit.com/mmistakes/jekyll-theme-basically-basic/master/_includes/icon-youtube.svg" width="16" height="16"> | icon-youtube.svg |
|
586
|
+
|
587
|
+
Fill colors are defined in the `_sass/basically-basic/_icons.scss` partial and
|
588
|
+
set with `.icon-name` where class name matches the corresponding icon.
|
589
|
+
|
590
|
+
For example the Twitter icon is given a fill color of `#1da1f2` like so:
|
591
|
+
|
592
|
+
```html
|
593
|
+
<span class="icon icon--twitter">{% include icon-twitter.svg %}</span>
|
594
|
+
```
|
595
|
+
|
596
|
+
Alongside the SVG assets, there are icon helper includes to aid in generating
|
597
|
+
social network links.
|
598
|
+
|
599
|
+
| Include Parameter | Description | Required |
|
600
|
+
| ----------------- | ---------------------------------| ----------------------- |
|
601
|
+
| `username` | Username on given social network | **Required** |
|
602
|
+
| `label` | Text used for hyperlink | Optional, defaults to `username` |
|
603
|
+
|
604
|
+
For example, the following `icon-github.html` include:
|
605
|
+
|
606
|
+
```liquid
|
607
|
+
{% include icon-github.html username=jekyll label='GitHub' %}
|
608
|
+
```
|
609
|
+
|
610
|
+
Will output the following HTML:
|
611
|
+
|
612
|
+
```html
|
613
|
+
<a href="https://github.com/jekyll">
|
614
|
+
<span class="icon icon--github"><svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill-rule="evenodd" clip-rule="evenodd" stroke-linejoin="round" stroke-miterlimit="1.414"><path d="M8 0C3.58 0 0 3.582 0 8c0 3.535 2.292 6.533 5.47 7.59.4.075.547-.172.547-.385 0-.19-.007-.693-.01-1.36-2.226.483-2.695-1.073-2.695-1.073-.364-.924-.89-1.17-.89-1.17-.725-.496.056-.486.056-.486.803.056 1.225.824 1.225.824.714 1.223 1.873.87 2.33.665.072-.517.278-.87.507-1.07-1.777-.2-3.644-.888-3.644-3.953 0-.873.31-1.587.823-2.147-.09-.202-.36-1.015.07-2.117 0 0 .67-.215 2.2.82.64-.178 1.32-.266 2-.27.68.004 1.36.092 2 .27 1.52-1.035 2.19-.82 2.19-.82.43 1.102.16 1.915.08 2.117.51.56.82 1.274.82 2.147 0 3.073-1.87 3.75-3.65 3.947.28.24.54.73.54 1.48 0 1.07-.01 1.93-.01 2.19 0 .21.14.46.55.38C13.71 14.53 16 11.53 16 8c0-4.418-3.582-8-8-8"></path></svg></span>
|
615
|
+
<span class="label">GitHub</span>
|
616
|
+
</a>
|
617
|
+
```
|
618
|
+
|
619
|
+
### Customizing Sidebar Content
|
620
|
+
|
621
|
+
---
|
622
|
+
|
623
|
+
## Development
|
624
|
+
|
625
|
+
To set up your environment to develop this theme:
|
626
|
+
|
627
|
+
1. Clone this repo
|
628
|
+
2. `cd` into `/example` and run `bundle install`.
|
629
|
+
|
630
|
+
To test the theme the locally as you make changes to it:
|
631
|
+
|
632
|
+
1. `cd` into the root folder of the repo (e.g. `jekyll-theme-basically-basic`).
|
633
|
+
2. Run `bundle exec rake preview` and open your browser to
|
634
|
+
`http://localhost:4000/example/`.
|
635
|
+
|
636
|
+
This starts a Jekyll server using the theme's files and contents of the
|
637
|
+
`example/` directory. As modifications are made, refresh your browser to see
|
638
|
+
any changes.
|
639
|
+
|
640
|
+
## Contributing
|
641
|
+
|
642
|
+
Found a typo in the documentation? Interested in adding a feature or
|
643
|
+
[fixing a bug][issues]? Then by all means [submit an issue][new-issue] or take a
|
644
|
+
stab at submitting a [pull request][using-pull-requests]. If this is your first
|
645
|
+
pull request, it may be helpful to read up on the [GitHub Flow][github-flow].
|
646
|
+
|
647
|
+
[issues]: https://github.com/mmistakes/jekyll-theme-basically-basic/issues
|
648
|
+
[new-issue]: https://github.com/mmistakes/jekyll-theme-basically-basic/issues/new
|
649
|
+
[using-pull-requests]: https://help.github.com/articles/using-pull-requests/
|
650
|
+
[github-flow]: https://guides.github.com/introduction/flow/
|
651
|
+
|
652
|
+
### Pull Requests
|
653
|
+
|
654
|
+
When submitting a pull request:
|
655
|
+
|
656
|
+
1. Clone the repo.
|
657
|
+
2. Create a branch off of `master` and give it a meaningful name (e.g.
|
658
|
+
`my-awesome-new-feature`) and describe the feature or fix.
|
659
|
+
3. Open a pull request on GitHub.
|
660
|
+
|
661
|
+
Sample pages can be found in the [`/docs`](docs) and [`/example`](/example)
|
662
|
+
folders if you'd like to tackle any "low-hanging fruit" like fixing typos, bad
|
663
|
+
grammar, etc.
|
664
|
+
|
665
|
+
---
|
666
|
+
|
667
|
+
## Credits
|
668
|
+
|
669
|
+
### Creator
|
670
|
+
|
671
|
+
**Michael Rose**
|
672
|
+
|
673
|
+
- <https://mademistakes.com>
|
674
|
+
- <https://twitter.com/mmistakes>
|
675
|
+
- <https://github.com/mmistakes>
|
676
|
+
|
677
|
+
### Icons + Demo Images:
|
678
|
+
|
679
|
+
- [Simple Icons](https://simpleicons.org/)
|
680
|
+
- [Noun Project](https://thenounproject.com)
|
681
|
+
- [Unsplash](https://unsplash.com/)
|
682
|
+
|
683
|
+
### Other:
|
684
|
+
|
685
|
+
- [Jekyll](http://jekyllrb.com/)
|
686
|
+
- [Susy](http://susy.oddbird.net/)
|
687
|
+
- [Breakpoint](http://breakpoint-sass.com/)
|
688
|
+
|
689
|
+
---
|
690
|
+
|
691
|
+
## License
|
692
|
+
|
693
|
+
The MIT License (MIT)
|
694
|
+
|
695
|
+
Copyright (c) 2017 Michael Rose
|
696
|
+
|
697
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
698
|
+
of this software and associated documentation files (the "Software"), to deal
|
699
|
+
in the Software without restriction, including without limitation the rights
|
700
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
701
|
+
copies of the Software, and to permit persons to whom the Software is
|
702
|
+
furnished to do so, subject to the following conditions:
|
703
|
+
|
704
|
+
The above copyright notice and this permission notice shall be included in all
|
705
|
+
copies or substantial portions of the Software.
|
706
|
+
|
707
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
708
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
709
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
710
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
711
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
712
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
713
|
+
SOFTWARE.
|