jekyll-theme-portfolio 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +181 -1
- data/_includes/footer.html +14 -0
- data/_includes/head.html +1 -1
- data/_sass/_variables.scss +1 -1
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: d90fbc37f7b7e47928205d5fb98fd3876cfc0102a9e6422501102c393778eae1
|
4
|
+
data.tar.gz: 5f481d91740953c040858a17e0883cabf26e036085866a58ecefc3df7c8b812d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c28d10df6961fea9bc017930460d27b19c6a9aa347e4351a6d9fb357849f64a6a574a44eea1a2e75c8a4a1c9f3f19ad1233ddf4bd4a96108131f85d8d3f36f93
|
7
|
+
data.tar.gz: 0f148fc4637e41abe393d546fbe2790324ae5516c892492464c47889da0e7e151ed4681944f22aa5f64e2e5bc35f8d082e85b225f2e7d38aaa038efb8c5abcb7
|
data/README.md
CHANGED
@@ -9,7 +9,187 @@ It is possible to use this theme without understanding anything about building w
|
|
9
9
|
It is also possible to go beyond that and customize the project right down to the CSS. This theme is made with [Bootstrap 4](https://getbootstrap.com/) and [SCSS](https://sass-lang.com/documentation/syntax).
|
10
10
|
|
11
11
|
|
12
|
-
|
12
|
+
![alt text](https://raw.githubusercontent.com/tedivm/jekyll-theme-portfolio/master/screenshot.png)
|
13
|
+
|
14
|
+
|
15
|
+
## Getting Started
|
16
|
+
|
17
|
+
### Setup a Github Pages Site
|
18
|
+
|
19
|
+
Github has a great [Getting Started with Github Pages](https://fontawesome.com/icons/chess-pawn?style=solid) tutorial.
|
20
|
+
|
21
|
+
|
22
|
+
### Configure your Site
|
23
|
+
|
24
|
+
At this point you should have a `_config.yml` file. You can just replace it with the one below, filled out with your details.
|
25
|
+
|
26
|
+
```yaml
|
27
|
+
|
28
|
+
# This is how Jekyll knows to use this theme.
|
29
|
+
remote_theme: tedivm/jekyll-theme-portfolio
|
30
|
+
|
31
|
+
|
32
|
+
title: Your awesome title
|
33
|
+
author: Your Name
|
34
|
+
email: your-email@domain.com
|
35
|
+
description: >
|
36
|
+
Write an awesome description for your new site here. You can edit this
|
37
|
+
line in _config.yml. It will appear in your document head meta (for
|
38
|
+
Google search results) and in your feed.xml site description.
|
39
|
+
|
40
|
+
|
41
|
+
# Header Links - all optional. If set these create header links.
|
42
|
+
homepage: https://your.homepage.com
|
43
|
+
twitter_username: example
|
44
|
+
github_username: example
|
45
|
+
linkedin_username: example
|
46
|
+
|
47
|
+
|
48
|
+
plugins:
|
49
|
+
- jekyll-feed
|
50
|
+
- jekyll-seo-tag
|
51
|
+
- jekyll-remote-theme # Lets us test remote themes locally.
|
52
|
+
|
53
|
+
```
|
54
|
+
|
55
|
+
|
56
|
+
### Create your Portfolio Page
|
57
|
+
|
58
|
+
If you have a one page site then you should create your portfolio page at `index.html` or `index.md`, but for multipage sites you can create it anywhere you want. Either way the file only contain the following to start (if there's anything after the last three dashes remove it for now)-
|
59
|
+
|
60
|
+
```
|
61
|
+
---
|
62
|
+
layout: portfolio
|
63
|
+
---
|
64
|
+
```
|
65
|
+
|
66
|
+
This tells Jekyll to use the `portfolio` layout for the page, which lets the theme take care of the rest.
|
67
|
+
|
68
|
+
If you do leave any content in the file it will show up above the portfolio listings.
|
69
|
+
|
70
|
+
### Add your Projects
|
71
|
+
|
72
|
+
Project details are stored in `_data/projects.yaml`.
|
73
|
+
|
74
|
+
|
75
|
+
## Defining Projects
|
76
|
+
|
77
|
+
Projects are defined using the `yaml`, which is like `json` but friendly for humans to edit.
|
78
|
+
|
79
|
+
Before diving into all of the options, lets look at an example projects file. This file has a single category, named `Libraries`, with four projects underneath it. Each of those projects has a variety of configuration values (most of which are optional) that tell the theme what to display.
|
80
|
+
|
81
|
+
```yaml
|
82
|
+
|
83
|
+
- name: Libraries
|
84
|
+
projects:
|
85
|
+
- name: Stash
|
86
|
+
description: This caching library supports multiple backends with a consistent frontend. It supports hierarchical keys, stampede and dogpile protection, automatic miss distribution, and more.
|
87
|
+
github: tedious/Stash
|
88
|
+
documentation: https://www.stashphp.com/
|
89
|
+
packagist: tedivm/stash
|
90
|
+
icon: fab fa-php
|
91
|
+
|
92
|
+
- name: JShrink
|
93
|
+
description: This library minifies javascript using 100% pure PHP, allowing it to be integrated into applications with minimal work and maximum compatibility.
|
94
|
+
github: tedious/JShrink
|
95
|
+
packagist: tedivm/jshrink
|
96
|
+
icon: fab fa-php
|
97
|
+
|
98
|
+
- name: github3apps.py
|
99
|
+
description: This library is a wrapper around the <a href="https://github.com/sigmavirus24/github3.py">github3.py</a> library, giving it the ability to build GitHub Applications.
|
100
|
+
github: tedivm/github3apps.py
|
101
|
+
pypi: github3apps.py
|
102
|
+
icon: fab fa-github
|
103
|
+
|
104
|
+
- name: Fetch
|
105
|
+
description: This library wraps the native PHP IMAP libraries around a modern object orientated interface.
|
106
|
+
github: tedious/Fetch
|
107
|
+
packagist: tedivm/fetch
|
108
|
+
icon: fab fa-php
|
109
|
+
|
110
|
+
- name: psad
|
111
|
+
description: This Puppet module controls the Port Scan Active Defense program, providing active response to block port scans.
|
112
|
+
puppet_forge: tedivm/psad
|
113
|
+
github: tedivm/puppet-psad
|
114
|
+
image: puppet.png
|
115
|
+
|
116
|
+
```
|
117
|
+
|
118
|
+
For a larger example you can view [tedivm's portfolio data](https://github.com/tedivm/portfolio/blob/master/_data/projects.yaml).
|
119
|
+
|
120
|
+
### Project Fields
|
121
|
+
|
122
|
+
There is only one required configuration values for each project, the `name`. If you put this and nothing else the project will get displayed using the default project icon and no description or links.
|
123
|
+
|
124
|
+
The `description` field is where you actually describe the project. You can put `html` in here if you want, which can be useful for linking to related projects.
|
125
|
+
|
126
|
+
Then there are a variety of repository options that can be used. Each of these will add an icon below the project description linking to that project in that particular repository or site-
|
127
|
+
|
128
|
+
* `homepage`
|
129
|
+
* `documentation`
|
130
|
+
* `github` - this will also add the `stars` link to the project.
|
131
|
+
* `dockerhub`
|
132
|
+
* `puppet_forge`
|
133
|
+
* `npm`
|
134
|
+
* `pypi`
|
135
|
+
* `packagist`
|
136
|
+
* `rubygems`
|
137
|
+
* `wordpress`
|
138
|
+
|
139
|
+
If there's a repository or site that isn't supported [open a ticket](https://github.com/tedivm/jekyll-theme-portfolio/issues/new?title=Please+add+project+link+support+for+X&body=Here%27s+an+example+link%3A+) and it should be simple to get it added.
|
140
|
+
|
141
|
+
|
142
|
+
### Images and Icons
|
143
|
+
|
144
|
+
Each project has a picture above it. The picture comes from either the `icon` or the `image` option of the project.
|
145
|
+
|
146
|
+
Icons come from [FontAwesome](https://fontawesome.com/icons?d=gallery&m=free). To use them you have to use the full class name, such as `fab fa-github` for [Github](https://fontawesome.com/icons/github?style=brands) or `fas fa-chess-pawn` for [the Pawn](https://fontawesome.com/icons/chess-pawn?style=solid).
|
147
|
+
|
148
|
+
Images should be supplied by you. Any images should be added to `assets/images/projects`, afterwhich they can be used in any `image` by using the filename (such as `image: puppet.png`).
|
149
|
+
|
150
|
+
You can also use `icon` and `image` at the category level. This will set the default for that category.
|
151
|
+
|
152
|
+
|
153
|
+
## Customizing
|
154
|
+
|
155
|
+
### Changing Colors
|
156
|
+
|
157
|
+
To override the existing colorscheme of the portfolio you're going to need to copy the variables file from [this theme's github page](https://raw.githubusercontent.com/tedivm/jekyll-theme-portfolio/master/_sass/_variables.scss) into `_sass/_variables.scss`. This will tell Jekyll to stop using the theme file and instead use yours.
|
158
|
+
|
159
|
+
Once there the first thing you'll likely want to change is the `$primary` color, which you should be able to fine on line 40. This variable is used for the header and the various project icons. You can set it to any of the colors defined above it (`$blue`, `$indigo`, `$pink`, etc) or to any hex code you'd like.
|
160
|
+
|
161
|
+
|
162
|
+
### Adding a FavIcon
|
163
|
+
|
164
|
+
There are all sorts of websites and tools which will help you make your favicon file. Once you have you just need to dump it into the repository as `favicon.ico` and it will start showing up.
|
165
|
+
|
166
|
+
|
167
|
+
### Using a Custom Domain
|
168
|
+
|
169
|
+
Github supports [custom domains](https://help.github.com/en/articles/using-a-custom-domain-with-github-pages), as you can see from their extensive documention.
|
170
|
+
|
171
|
+
Long story short, point the DNS for your domain to `username.github.io` as a CNAME record and then add a file named `CNAME` with that domain as the file contents.
|
172
|
+
|
173
|
+
|
174
|
+
### Adding Analytics
|
175
|
+
|
176
|
+
This theme supports two website analytics options- [Fathom](https://usefathom.com/), which is an [open source](https://github.com/usefathom/fathom) and privacy focused analytics package, or theres [Google Analytics](https://google.com/analytics). Both require a simple addition to your configuration file to use.
|
177
|
+
|
178
|
+
Fathom takes a Site ID and optionally a URL (if you're hosting it yourself instead of using their service).
|
179
|
+
|
180
|
+
```
|
181
|
+
fathom_key: DXQMN
|
182
|
+
fathom_domain: fathom.example.net
|
183
|
+
```
|
184
|
+
|
185
|
+
For Google Analytics you only need the one option.
|
186
|
+
|
187
|
+
```
|
188
|
+
google_analytics: UA-XXXXX-Y
|
189
|
+
```
|
190
|
+
|
191
|
+
|
192
|
+
## Awknowledgements
|
13
193
|
|
14
194
|
This project was forked off of the excellent [Boostrap 4 Github Pages project](https://github.com/nicolas-van/bootstrap-4-github-pages).
|
15
195
|
|
data/_includes/footer.html
CHANGED
@@ -55,3 +55,17 @@
|
|
55
55
|
</script>
|
56
56
|
<!-- / Fathom -->
|
57
57
|
{%- endif -%}
|
58
|
+
|
59
|
+
{% if site.google_analytics %}
|
60
|
+
<!-- Google Analytics -->
|
61
|
+
<script>
|
62
|
+
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
63
|
+
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
64
|
+
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
65
|
+
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
|
66
|
+
|
67
|
+
ga('create', {{ site.google_analytics }}, 'auto');
|
68
|
+
ga('send', 'pageview');
|
69
|
+
</script>
|
70
|
+
<!-- End Google Analytics -->
|
71
|
+
{%- endif -%}
|
data/_includes/head.html
CHANGED
@@ -8,5 +8,5 @@
|
|
8
8
|
{%- feed_meta -%}
|
9
9
|
<script defer src="{{ "/assets/javascript/bootstrap/jquery.min.js" | relative_url }}"></script>
|
10
10
|
<script defer src="{{ "/assets/javascript/bootstrap/bootstrap.bundle.min.js" | relative_url }}"></script>
|
11
|
-
<script
|
11
|
+
<script src="https://gitbuttons.tedivm.com/buttons.js" integrity="sha384-dl0n4CP/gJsA31+mtSe2Gc0FbNR6oq2Ox4HHwEq6LTiZEPRMTzj87lXYl2l/w+KQ" crossorigin="anonymous"></script>
|
12
12
|
</head>
|
data/_sass/_variables.scss
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jekyll-theme-portfolio
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Robert Hafner
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-06-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -211,8 +211,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
211
211
|
- !ruby/object:Gem::Version
|
212
212
|
version: '0'
|
213
213
|
requirements: []
|
214
|
-
|
215
|
-
rubygems_version: 2.5.2.3
|
214
|
+
rubygems_version: 3.0.3
|
216
215
|
signing_key:
|
217
216
|
specification_version: 4
|
218
217
|
summary: A Bootstrap based portfolio theme for Jekyll.
|