Skip to content

Commit 9203ae8

Browse files
committed
Merge branch 'install-docs'
2 parents 4182c34 + 544a6d3 commit 9203ae8

File tree

3 files changed

+193
-24
lines changed

3 files changed

+193
-24
lines changed

README.md

Lines changed: 125 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,13 @@ with a few enhancements thrown in for good measure:
2323
## Table of Contents
2424

2525
1. [Installation](#installation)
26-
2. [Configuration](#configuration)
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)
2733
1. [Skin](#skin)
2834
2. [Google Fonts](#google-fonts)
2935
3. [Text](#text)
@@ -33,26 +39,33 @@ with a few enhancements thrown in for good measure:
3339
7. [Reading Time](#reading-time)
3440
8. [Comments (via Disqus)](#comments-via-disqus)
3541
9. [Google Analytics](#google-analytics)
36-
3. [Layouts](#layouts)
42+
4. [Layouts](#layouts)
3743
1. [Default](#layout-default)
3844
2. [Post](#layout-post)
3945
3. [Page](#layout-page)
4046
4. [Home](#layout-home)
4147
5. [About](#layout-about)
4248
6. [Curriculum Vitæ/Resume](#layout-cv)
43-
4. [Customization](#customization)
49+
5. [Customization](#customization)
4450
1. [Overriding Includes and Layouts](#overriding-includes-and-layouts)
4551
2. [Customizing Sass (SCSS)](#customizing-sass-scss)
4652
3. [Customizing JavaScript](#customizing-javascript)
4753
4. [SVG Icons](#svg-icons)
4854
5. [Customizing Sidebar Content](#customizing-sidebar-content)
49-
5. [Development](#development)
50-
6. [Contributing](#contributing)
55+
6. [Development](#development)
56+
7. [Contributing](#contributing)
5157
1. [Pull Requests](#pull-requests)
52-
7. [Credits](#credits)
58+
8. [Credits](#credits)
5359

5460
## Installation
5561

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+
5669
1. Install the theme as a Ruby Gem by adding it to your `Gemfile` like so:
5770

5871
```ruby
@@ -72,9 +85,91 @@ with a few enhancements thrown in for good measure:
7285
theme: jekyll-theme-basically-basic
7386
```
7487
75-
**Note:** 3rd-party Ruby gem themes aren't currently supported on sites hosted
76-
with [GitHub Pages](https://pages.github.com/). Basically Basic can still be
77-
used on GH Pages, but you will need to fork the theme instead.
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.
78173

79174
## Configuration
80175

@@ -196,13 +291,18 @@ following pagination settings:
196291
```
197292

198293
3. Create `index.html` (or rename `index.md`) in the root of your project and
199-
add `layout: home` `paginate: true` to its YAML Front Matter.
294+
add the following front matter:
295+
296+
```yaml
297+
layout: home
298+
paginate: true
299+
```
200300

201301
### Author
202302

203303
Author information is used as meta data for post "by lines" and propagates the
204-
`creator` field of Twitter summary cards with the following YAML Front Matter
205-
in `_config.yml`:
304+
`creator` field of Twitter summary cards with the following front matter in
305+
`_config.yml`:
206306

207307
```yaml
208308
author:
@@ -211,8 +311,8 @@ author:
211311
picture: /assets/images/johndoe.png
212312
```
213313

214-
Site-wide author information can be overridden in a document's YAML Front Matter
215-
in the same way:
314+
Site-wide author information can be overridden in a document's front matter in
315+
the same way:
216316

217317
```yaml
218318
author:
@@ -221,9 +321,9 @@ author:
221321
picture: /assets/images/janedoe.png
222322
```
223323

224-
Or by specifying a corresponding key in the document's YAML Front Matter, that
324+
Or by specifying a corresponding key in the document's front matter, that
225325
exists in `site.data.authors`. E.g., you have the following in the document's
226-
YAML Front Matter:
326+
front matter:
227327

228328
```yaml
229329
author: megaman
@@ -268,7 +368,7 @@ with the following [environment value](http://jekyllrb.com/docs/configuration/#s
268368
`JEKYLL_ENV=production`
269369

270370
If you don't want to display comments for a particular post you can disable
271-
them by adding `comments: false` to that post's YAML Front Matter.
371+
them by adding `comments: false` to that post's front matter.
272372

273373
### Google Analytics
274374

@@ -302,7 +402,7 @@ and provide additional styling and features inside of the `{{ content }}` block.
302402

303403
### `layout: post`
304404

305-
This layout accommodates the following YAML Front Matter:
405+
This layout accommodates the following front matter:
306406

307407
```yaml
308408
# optional alternate title to replace page.title at the top of the page
@@ -344,7 +444,7 @@ differences.
344444

345445
### `layout: home`
346446

347-
This layout accommodates the same YAML Front Matter as `layout: page`, with the
447+
This layout accommodates the same front matter as `layout: page`, with the
348448
addition of the following:
349449

350450
```yaml
@@ -353,7 +453,7 @@ paginate: true # enables pagination loop, see section above for additional setu
353453

354454
### `layout: about`
355455

356-
This layout accommodates the same YAML Front Matter as `layout: page`, with the
456+
This layout accommodates the same front matter as `layout: page`, with the
357457
addition of the following to display an author picture:
358458

359459
```yaml
@@ -363,14 +463,14 @@ author:
363463
```
364464

365465
Recommended `picture` size is approximately `300 x 300` pixels. If `author`
366-
object is not explicitly set in the about page's YAML Front Matter the theme
466+
object is not explicitly set in the about page's front matter the theme
367467
will default to the value set in `_config.yml`.
368468

369469
If blank there no image will appear.
370470

371471
### `layout: cv`
372472

373-
This layout accommodates the same YAML Front Matter as `layout: page`. It
473+
This layout accommodates the same front matter as `layout: page`. It
374474
leverages a [JSON-based file standard](https://jsonresume.org/schema/) for
375475
resume data to conveniently render a curriculum vitæ or resume painlessly.
376476

@@ -558,8 +658,9 @@ When submitting a pull request:
558658
`my-awesome-new-feature`) and describe the feature or fix.
559659
3. Open a pull request on GitHub.
560660

561-
Sample pages can be found in the [`/docs`](docs) folder if you'd like to tackle
562-
any "low-hanging fruit" like fixing typos, bad grammar, etc.
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.
563664

564665
---
565666

_config.yml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Welcome to Jekyll!
2+
#
3+
# This config file is meant for settings that affect your whole blog, values
4+
# which you are expected to set up once and rarely edit after that. If you find
5+
# yourself editing this file very often, consider using Jekyll's data files
6+
# feature for the data you need to update frequently.
7+
#
8+
# For technical reasons, this file is *NOT* reloaded automatically when you use
9+
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
10+
11+
# Site settings
12+
# These are used to personalize your new site. If you look in the HTML files,
13+
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
14+
# You can create any custom variable you would like, and they will be accessible
15+
# in the templates via {{ site.myvariable }}.
16+
lang: en-US
17+
title: My Awesome Site
18+
email:
19+
description:
20+
baseurl: # the subpath of your site, e.g. /blog
21+
url: # the base hostname & protocol for your site, e.g. http://example.com
22+
author:
23+
name:
24+
twitter:
25+
picture:
26+
twitter_username:
27+
github_username:
28+
logo:
29+
30+
# Build settings
31+
markdown: kramdown
32+
theme: jekyll-theme-basically-basic
33+
gems:
34+
- jekyll-feed
35+
- jekyll-seo-tag
36+
- jekyll-sitemap
37+
- jekyll-paginate
38+
feed:
39+
path: atom.xml
40+
41+
# Pagination - https://jekyllrb.com/docs/pagination/
42+
paginate: 10
43+
paginate_path: /page:num/
44+
45+
# Exclude from processing.
46+
# The following items will not be processed, by default. Create a custom list
47+
# to override the default setting.
48+
# exclude:
49+
# - Gemfile
50+
# - Gemfile.lock
51+
# - node_modules
52+
# - vendor/bundle/
53+
# - vendor/cache/
54+
# - vendor/gems/
55+
# - vendor/ruby/
56+
57+
# Front Matter Defaults
58+
defaults:
59+
# _posts
60+
- scope:
61+
path: "_posts"
62+
type: posts
63+
values:
64+
layout: post
65+
read_time: true

index.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
layout: home
3+
---

0 commit comments

Comments
 (0)