Skip to content

Commit a29b4e8

Browse files
committed
Initial setup of Jekyll theme
1 parent 35378cc commit a29b4e8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+2434
-1
lines changed

404.html

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
title: Not Found
3+
description: This does not exist
4+
permalink: /404.html
5+
sitemap: false
6+
---

Gemfile

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
source 'https://rubygems.org'
2+
3+
gem 'jekyll', '4.0.0'
4+
5+
group :jekyll_plugins do
6+
gem 'jekyll-archives', '2.1.1'
7+
gem 'jekyll-feed', '0.12.1'
8+
gem 'jekyll-paginate', '1.1.0'
9+
gem 'jekyll-seo-tag', '2.6.1'
10+
gem 'jekyll-sitemap', '1.3.1'
11+
end

Gemfile.lock

+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
GEM
2+
remote: https://rubygems.org/
3+
specs:
4+
addressable (2.7.0)
5+
public_suffix (>= 2.0.2, < 5.0)
6+
colorator (1.1.0)
7+
concurrent-ruby (1.1.5)
8+
em-websocket (0.5.1)
9+
eventmachine (>= 0.12.9)
10+
http_parser.rb (~> 0.6.0)
11+
eventmachine (1.2.7)
12+
ffi (1.11.1)
13+
forwardable-extended (2.6.0)
14+
http_parser.rb (0.6.0)
15+
i18n (1.7.0)
16+
concurrent-ruby (~> 1.0)
17+
jekyll (4.0.0)
18+
addressable (~> 2.4)
19+
colorator (~> 1.0)
20+
em-websocket (~> 0.5)
21+
i18n (>= 0.9.5, < 2)
22+
jekyll-sass-converter (~> 2.0)
23+
jekyll-watch (~> 2.0)
24+
kramdown (~> 2.1)
25+
kramdown-parser-gfm (~> 1.0)
26+
liquid (~> 4.0)
27+
mercenary (~> 0.3.3)
28+
pathutil (~> 0.9)
29+
rouge (~> 3.0)
30+
safe_yaml (~> 1.0)
31+
terminal-table (~> 1.8)
32+
jekyll-archives (2.1.1)
33+
jekyll (>= 2.4)
34+
jekyll-feed (0.12.1)
35+
jekyll (>= 3.7, < 5.0)
36+
jekyll-paginate (1.1.0)
37+
jekyll-sass-converter (2.0.1)
38+
sassc (> 2.0.1, < 3.0)
39+
jekyll-seo-tag (2.6.1)
40+
jekyll (>= 3.3, < 5.0)
41+
jekyll-sitemap (1.3.1)
42+
jekyll (>= 3.7, < 5.0)
43+
jekyll-watch (2.2.1)
44+
listen (~> 3.0)
45+
kramdown (2.1.0)
46+
kramdown-parser-gfm (1.1.0)
47+
kramdown (~> 2.0)
48+
liquid (4.0.3)
49+
listen (3.2.0)
50+
rb-fsevent (~> 0.10, >= 0.10.3)
51+
rb-inotify (~> 0.9, >= 0.9.10)
52+
mercenary (0.3.6)
53+
pathutil (0.16.2)
54+
forwardable-extended (~> 2.6)
55+
public_suffix (4.0.1)
56+
rb-fsevent (0.10.3)
57+
rb-inotify (0.10.0)
58+
ffi (~> 1.0)
59+
rouge (3.12.0)
60+
safe_yaml (1.0.5)
61+
sassc (2.2.1)
62+
ffi (~> 1.9)
63+
terminal-table (1.8.0)
64+
unicode-display_width (~> 1.1, >= 1.1.1)
65+
unicode-display_width (1.6.0)
66+
67+
PLATFORMS
68+
ruby
69+
70+
DEPENDENCIES
71+
jekyll (= 4.0.0)
72+
jekyll-archives (= 2.1.1)
73+
jekyll-feed (= 0.12.1)
74+
jekyll-paginate (= 1.1.0)
75+
jekyll-seo-tag (= 2.6.1)
76+
jekyll-sitemap (= 1.3.1)
77+
78+
BUNDLED WITH
79+
1.17.3

LICENSE

+9-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2020 Path Of Building Community
3+
Copyright (c) 2020 Path of Building Community
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal
@@ -19,3 +19,11 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1919
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
2020
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
2121
SOFTWARE.
22+
23+
===========================
24+
25+
Hydra Theme
26+
27+
MIT License
28+
29+
Copyright (c) 2016 CloudCannon

README.md

+79
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,81 @@
11
# pathofbuildingcommunity.github.io
22
Offline build planner for Path of Exile
3+
4+
# Hydra
5+
6+
Marketing site template for Jekyll. Browse through a [live demo](https://proud-alligator.cloudvent.net/).
7+
Increase the web presence of your brand with this configurable theme.
8+
9+
![Hydra template screenshot](images/_screenshot.png)
10+
11+
Hydra was made by [CloudCannon](http://cloudcannon.com/), the Cloud CMS for Jekyll.
12+
13+
Find more templates, themes and step-by-step Jekyll tutorials at [CloudCannon Academy](https://learn.cloudcannon.com/).
14+
15+
## Features
16+
17+
* Contact form
18+
* Pre-built pages
19+
* Pre-styled components
20+
* Blog with pagination
21+
* Post category pages
22+
* Disqus comments for posts
23+
* Staff and author system
24+
* Configurable footer
25+
* Optimised for editing in [CloudCannon](http://cloudcannon.com/)
26+
* RSS/Atom feed
27+
* SEO tags
28+
* Google Analytics
29+
30+
## Setup
31+
32+
1. Add your site and author details in `_config.yml`.
33+
2. Add your Google Analytics and Disqus keys to `_config.yml`.
34+
3. Get a workflow going to see your site's output (with [CloudCannon](https://app.cloudcannon.com/) or Jekyll locally).
35+
36+
## Develop
37+
38+
Hydra was built with [Jekyll](http://jekyllrb.com/) version 3.3.1, but should support newer versions as well.
39+
40+
Install the dependencies with [Bundler](http://bundler.io/):
41+
42+
~~~bash
43+
$ bundle install
44+
~~~
45+
46+
Run `jekyll` commands through Bundler to ensure you're using the right versions:
47+
48+
~~~bash
49+
$ bundle exec jekyll serve
50+
~~~
51+
52+
## Editing
53+
54+
Hydra is already optimised for adding, updating and removing pages, staff, advice, company details and footer elements in CloudCannon.
55+
56+
### Posts
57+
58+
* Add, update or remove a post in the *Posts* collection.
59+
* The **Staff Author** field links to members in the **Staff** collection.
60+
* Documentation pages are organised in the navigation by category, with URLs based on the path inside the `_docs` folder.
61+
* Change the defaults when new posts are created in `_posts/_defaults.md`.
62+
63+
### Contact Form
64+
65+
* Preconfigured to work with CloudCannon, but easily changed to another provider (e.g. [FormSpree](https://formspree.io/)).
66+
* Sends email to the address listed in company details.
67+
68+
### Staff
69+
70+
* Reused around the site to save multiple editing locations.
71+
* Add `excluded_in_search: true` to any documentation page's front matter to exclude that page in the search results.
72+
73+
### Navigation
74+
75+
* Exposed as a data file to give clients better access.
76+
* Set in the *Data* / *Navigation* section.
77+
78+
### Footer
79+
80+
* Exposed as a data file to give clients better access.
81+
* Set in the *Data* / *Footer* section.

_config.yml

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
# ----
2+
# Site
3+
4+
title: Path of Building CE
5+
url: "https://pathofbuilding.community/"
6+
7+
# Values for the jekyll-seo-tag gem (https://github.com/jekyll/jekyll-seo-tag)
8+
logo: /siteicon.png
9+
description: A Path of Exile build planner
10+
author: POB Community
11+
social:
12+
name: POB
13+
links:
14+
- https://github.com/PathOfBuildingCommunity/PathOfBuilding
15+
16+
# -----
17+
# Build
18+
19+
timezone: Etc/UTC
20+
21+
collections:
22+
staff_members:
23+
_hide_content: true
24+
25+
paginate: 10
26+
paginate_path: "/blog/:num/"
27+
permalink: pretty
28+
29+
defaults:
30+
-
31+
scope:
32+
path: ""
33+
type: "posts"
34+
values:
35+
layout: "post"
36+
_options:
37+
content:
38+
width: 1500
39+
height: 2500
40+
-
41+
scope:
42+
path: ""
43+
type: "staff_members"
44+
values:
45+
_options:
46+
image_path:
47+
width: 600
48+
height: 600
49+
-
50+
scope:
51+
path: ""
52+
values:
53+
layout: "page"
54+
-
55+
scope:
56+
path: "index.html"
57+
values:
58+
layout: "default"
59+
-
60+
scope:
61+
path: "contact.html"
62+
values:
63+
full_width: true
64+
65+
jekyll-archives:
66+
enabled:
67+
- categories
68+
69+
plugins:
70+
- jekyll-archives
71+
- jekyll-sitemap
72+
- jekyll-seo-tag
73+
- jekyll-feed
74+
- jekyll-paginate
75+
76+
exclude:
77+
- Gemfile
78+
- Gemfile.lock
79+
- README.md
80+
- LICENCE
81+

_data/footer.yml

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
- links:
2+
- name: Pricing
3+
link: /pricing/
4+
- name: Blog
5+
link: /blog/
6+
- name: About
7+
link: /about/
8+
- name: Contact
9+
link: /contact/
10+
- links:
11+
- name: Login
12+
link: /
13+
new_window: true
14+
- name: Sign Up
15+
link: /
16+
new_window: true
17+
- name: Docs
18+
link: /
19+
new_window: true
20+
- name: Status
21+
link: /
22+
new_window: true
23+
- links:
24+
- name: Facebook
25+
link: https://facebook.com/cloudcannon/
26+
new_window: true
27+
social_icon: Facebook
28+
- name: Twitter
29+
link: https://twitter.com/cloudcannon/
30+
social_icon: Twitter
31+
new_window: true
32+
- name: YouTube
33+
link: https://youtube.com/cloudcannon/
34+
social_icon: YouTube
35+
new_window: true
36+
- name: RSS
37+
link: /feed.xml
38+
social_icon: RSS
39+
new_window: false

_data/navigation.yml

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
- name: Pricing
2+
link: /pricing/
3+
new_window: false
4+
highlight: false
5+
- name: Blog
6+
link: /blog/
7+
new_window: false
8+
highlight: false
9+
- name: About
10+
link: /about/
11+
new_window: false
12+
highlight: false
13+
- name: Contact
14+
link: /contact/
15+
new_window: false
16+
highlight: false
17+
- name: Login
18+
link: /
19+
new_window: true
20+
highlight: false
21+
- name: Sign Up
22+
link: /
23+
new_window: true
24+
highlight: true

_includes/list-posts.html

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{% for post in include.posts %}
2+
<li class="blog-post">
3+
<h3><a href="{% include relative-src.html src=post.url %}">{{ post.title }}</a></h3>
4+
{% include post-title.html post=post %}
5+
<div class="post-content">
6+
{{ post.excerpt }}
7+
<div class="button"><a href="{% include relative-src.html src=post.url %}">Read More</a></div>
8+
</div>
9+
</li>
10+
{% endfor %}

_includes/navigation.html

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<nav>
2+
<a class="nav-toggle" id="open-nav" href="#">&#9776;</a>
3+
<a class="editor-link btn" href="cloudcannon:collections/_data/navigation.yml" class="btn"><strong>&#9998;</strong> Edit navigation</a>
4+
{% for link in site.data.navigation %}
5+
{% assign class = "" %}
6+
{% if link.highlight %}
7+
{% assign class = class | append: " highlight" %}
8+
{% endif %}
9+
10+
{% if link.link == page.url %}
11+
{% assign class = class | append: " active" %}
12+
{% endif %}
13+
<a href="{% include relative-src.html src=link.link %}" class="{{ class }}" {% if link.new_window %}target="_blank"{% endif %}>{{ link.name }}</a>
14+
{% endfor %}
15+
</nav>

_includes/post-title.html

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<p class="post-details">
2+
{% for category in include.post.categories %}
3+
<span class="blog-filter">
4+
<a href="{{ site.baseurl }}/category/{{ category | slugify }}/">{{ category | capitalize }}</a>
5+
</span>
6+
{% endfor %}
7+
<span class="post-date">{{ include.post.date | date: "%B %d, %Y" }}</span>
8+
</p>

_includes/relative-src.html

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
{% assign prefix = include.src | slice: 0, 2 %}{% assign protocol = include.src | slice: 0, 4 %}{% unless protocol == 'http' or prefix == "//" %}{{ site.baseurl }}{% endunless %}{{ include.src }}

0 commit comments

Comments
 (0)