jekyll-theme-petridish 3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE +21 -0
- data/README.md +57 -0
- data/_config.yml +54 -0
- data/_data/custom-navigation.yml +13 -0
- data/_data/footer.yml +25 -0
- data/_data/navigation.yml +24 -0
- data/_data/team.yml +26 -0
- data/_includes/card.html +41 -0
- data/_includes/footer.html +125 -0
- data/_includes/head.html +69 -0
- data/_includes/header.html +42 -0
- data/_includes/navbar.html +58 -0
- data/_includes/toc.html +182 -0
- data/_layouts/archive.html +46 -0
- data/_layouts/base.html +26 -0
- data/_layouts/default.html +41 -0
- data/_layouts/home.html +39 -0
- data/_layouts/team.html +76 -0
- data/_sass/_base.scss +18 -0
- data/_sass/_card.scss +51 -0
- data/_sass/_content.scss +108 -0
- data/_sass/_custom.scss +3 -0
- data/_sass/_footer.scss +38 -0
- data/_sass/_header.scss +103 -0
- data/_sass/_main.scss +6 -0
- data/_sass/_navbar.scss +27 -0
- data/_sass/_team.scss +23 -0
- data/_sass/_toc.scss +47 -0
- data/_sass/_variables.scss +72 -0
- data/_sass/bootstrap/_accordion.scss +118 -0
- data/_sass/bootstrap/_alert.scss +57 -0
- data/_sass/bootstrap/_badge.scss +29 -0
- data/_sass/bootstrap/_breadcrumb.scss +28 -0
- data/_sass/bootstrap/_button-group.scss +139 -0
- data/_sass/bootstrap/_buttons.scss +111 -0
- data/_sass/bootstrap/_card.scss +216 -0
- data/_sass/bootstrap/_carousel.scss +229 -0
- data/_sass/bootstrap/_close.scss +40 -0
- data/_sass/bootstrap/_containers.scss +41 -0
- data/_sass/bootstrap/_dropdown.scss +240 -0
- data/_sass/bootstrap/_forms.scss +9 -0
- data/_sass/bootstrap/_functions.scss +302 -0
- data/_sass/bootstrap/_grid.scss +33 -0
- data/_sass/bootstrap/_helpers.scss +9 -0
- data/_sass/bootstrap/_images.scss +42 -0
- data/_sass/bootstrap/_list-group.scss +174 -0
- data/_sass/bootstrap/_mixins.scss +43 -0
- data/_sass/bootstrap/_modal.scss +209 -0
- data/_sass/bootstrap/_nav.scss +139 -0
- data/_sass/bootstrap/_navbar.scss +335 -0
- data/_sass/bootstrap/_offcanvas.scss +83 -0
- data/_sass/bootstrap/_pagination.scss +64 -0
- data/_sass/bootstrap/_placeholders.scss +51 -0
- data/_sass/bootstrap/_popover.scss +158 -0
- data/_sass/bootstrap/_progress.scss +48 -0
- data/_sass/bootstrap/_reboot.scss +625 -0
- data/_sass/bootstrap/_root.scss +54 -0
- data/_sass/bootstrap/_spinners.scss +69 -0
- data/_sass/bootstrap/_tables.scss +155 -0
- data/_sass/bootstrap/_toasts.scss +51 -0
- data/_sass/bootstrap/_tooltip.scss +115 -0
- data/_sass/bootstrap/_transitions.scss +27 -0
- data/_sass/bootstrap/_type.scss +104 -0
- data/_sass/bootstrap/_utilities.scss +630 -0
- data/_sass/bootstrap/_variables.scss +1641 -0
- data/_sass/bootstrap/bootstrap-grid.scss +67 -0
- data/_sass/bootstrap/bootstrap-reboot.scss +13 -0
- data/_sass/bootstrap/bootstrap-utilities.scss +18 -0
- data/_sass/bootstrap/bootstrap.scss +53 -0
- data/_sass/bootstrap/forms/_floating-labels.scss +63 -0
- data/_sass/bootstrap/forms/_form-check.scss +152 -0
- data/_sass/bootstrap/forms/_form-control.scss +219 -0
- data/_sass/bootstrap/forms/_form-range.scss +91 -0
- data/_sass/bootstrap/forms/_form-select.scss +72 -0
- data/_sass/bootstrap/forms/_form-text.scss +11 -0
- data/_sass/bootstrap/forms/_input-group.scss +121 -0
- data/_sass/bootstrap/forms/_labels.scss +36 -0
- data/_sass/bootstrap/forms/_validation.scss +12 -0
- data/_sass/bootstrap/helpers/_clearfix.scss +3 -0
- data/_sass/bootstrap/helpers/_colored-links.scss +12 -0
- data/_sass/bootstrap/helpers/_position.scss +30 -0
- data/_sass/bootstrap/helpers/_ratio.scss +26 -0
- data/_sass/bootstrap/helpers/_stacks.scss +15 -0
- data/_sass/bootstrap/helpers/_stretched-link.scss +15 -0
- data/_sass/bootstrap/helpers/_text-truncation.scss +7 -0
- data/_sass/bootstrap/helpers/_visually-hidden.scss +8 -0
- data/_sass/bootstrap/helpers/_vr.scss +8 -0
- data/_sass/bootstrap/mixins/_alert.scss +11 -0
- data/_sass/bootstrap/mixins/_backdrop.scss +14 -0
- data/_sass/bootstrap/mixins/_border-radius.scss +78 -0
- data/_sass/bootstrap/mixins/_box-shadow.scss +18 -0
- data/_sass/bootstrap/mixins/_breakpoints.scss +127 -0
- data/_sass/bootstrap/mixins/_buttons.scss +133 -0
- data/_sass/bootstrap/mixins/_caret.scss +64 -0
- data/_sass/bootstrap/mixins/_clearfix.scss +9 -0
- data/_sass/bootstrap/mixins/_color-scheme.scss +7 -0
- data/_sass/bootstrap/mixins/_container.scss +9 -0
- data/_sass/bootstrap/mixins/_deprecate.scss +10 -0
- data/_sass/bootstrap/mixins/_forms.scss +144 -0
- data/_sass/bootstrap/mixins/_gradients.scss +47 -0
- data/_sass/bootstrap/mixins/_grid.scss +151 -0
- data/_sass/bootstrap/mixins/_image.scss +16 -0
- data/_sass/bootstrap/mixins/_list-group.scss +24 -0
- data/_sass/bootstrap/mixins/_lists.scss +7 -0
- data/_sass/bootstrap/mixins/_pagination.scss +31 -0
- data/_sass/bootstrap/mixins/_reset-text.scss +17 -0
- data/_sass/bootstrap/mixins/_resize.scss +6 -0
- data/_sass/bootstrap/mixins/_table-variants.scss +21 -0
- data/_sass/bootstrap/mixins/_text-truncate.scss +8 -0
- data/_sass/bootstrap/mixins/_transition.scss +26 -0
- data/_sass/bootstrap/mixins/_utilities.scss +89 -0
- data/_sass/bootstrap/mixins/_visually-hidden.scss +29 -0
- data/_sass/bootstrap/utilities/_api.scss +47 -0
- data/_sass/bootstrap/vendor/_rfs.scss +354 -0
- data/assets/theme/css/academicons.min.css +1 -0
- data/assets/theme/css/fontawesome-all.min.css +5 -0
- data/assets/theme/css/main.scss +59 -0
- data/assets/theme/css/pygments.css +77 -0
- data/assets/theme/fonts/academicons.eot +0 -0
- data/assets/theme/fonts/academicons.svg +1663 -0
- data/assets/theme/fonts/academicons.ttf +0 -0
- data/assets/theme/fonts/academicons.woff +0 -0
- data/assets/theme/images/chuttersnap-146799-unsplash.jpg +0 -0
- data/assets/theme/images/farnsworth_angelo-abear-1662775-unsplash.jpg +0 -0
- data/assets/theme/images/fry_ethan-hoover-311143-unsplash.jpg +0 -0
- data/assets/theme/images/petri-dish_1f9eb.png +0 -0
- data/assets/theme/js/anchor.min.js +9 -0
- data/assets/theme/js/bootstrap.min.js +7 -0
- data/assets/theme/js/bootstrap.min.js.map +1 -0
- data/assets/theme/js/jquery.min.js +2 -0
- data/assets/theme/js/popper.min.js +6 -0
- data/assets/theme/js/popper.min.js.map +1 -0
- data/assets/theme/webfonts/fa-brands-400.eot +0 -0
- data/assets/theme/webfonts/fa-brands-400.svg +3717 -0
- data/assets/theme/webfonts/fa-brands-400.ttf +0 -0
- data/assets/theme/webfonts/fa-brands-400.woff +0 -0
- data/assets/theme/webfonts/fa-brands-400.woff2 +0 -0
- data/assets/theme/webfonts/fa-regular-400.eot +0 -0
- data/assets/theme/webfonts/fa-regular-400.svg +801 -0
- data/assets/theme/webfonts/fa-regular-400.ttf +0 -0
- data/assets/theme/webfonts/fa-regular-400.woff +0 -0
- data/assets/theme/webfonts/fa-regular-400.woff2 +0 -0
- data/assets/theme/webfonts/fa-solid-900.eot +0 -0
- data/assets/theme/webfonts/fa-solid-900.svg +5034 -0
- data/assets/theme/webfonts/fa-solid-900.ttf +0 -0
- data/assets/theme/webfonts/fa-solid-900.woff +0 -0
- data/assets/theme/webfonts/fa-solid-900.woff2 +0 -0
- metadata +204 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 267d6da8663223b23d3b86d562a47d4b3f92c20a3601ec1114a02c06d2b29939
|
4
|
+
data.tar.gz: f1ae8acb9a10cf6c1baac0b7138ae8d3e246d8388c2740e43fbd001c4b8dff50
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 1c131505d5dd161858910c7e18b7cdee1bf23294226a1c3f3a19db4598739223d948adace2145124a21c648acd87ec12811a85ced6a974cfb444358c7eec0536
|
7
|
+
data.tar.gz: c87726cdc714bd6045f15d97d1e315f4d69c176e5f6cfb7c97648e7da7f0179aee8e38d5bcadecedc52d9085989736fdc44ecc2d66f093f0de375b34a77012b2
|
data/LICENSE
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright (c) 2019 Peter Desmet
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
7
|
+
in the Software without restriction, including without limitation the rights
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
10
|
+
furnished to do so, subject to the following conditions:
|
11
|
+
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
13
|
+
all copies or substantial portions of the Software.
|
14
|
+
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
21
|
+
THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
# petridish 🧫
|
2
|
+
|
3
|
+
Petridish is a Jekyll theme for research project websites. Or your personal blog or lab website. 👩🔬 It's mobile-friendly (thanks to [Bootstrap 5](https://getbootstrap.com/docs/5.1/)), free, easy to customize, and designed to work well with [GitHub Pages](https://pages.github.com/).
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
See the demo website for instructions:
|
8
|
+
|
9
|
+
- [Installation](https://peterdesmet.github.io/petridish/docs/installation)
|
10
|
+
- [Configuration](https://peterdesmet.github.io/petridish/docs/configuration)
|
11
|
+
- [Markdown](https://peterdesmet.github.io/petridish/docs/markdown)
|
12
|
+
|
13
|
+
## Preview
|
14
|
+
|
15
|
+
[Demo website](https://peterdesmet.github.io/petridish)
|
16
|
+
|
17
|
+
[](https://peterdesmet.github.io/petridish)
|
18
|
+
|
19
|
+
## Contributing
|
20
|
+
|
21
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/peterdesmet/petridish. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
22
|
+
|
23
|
+
## License
|
24
|
+
|
25
|
+
[MIT License](LICENSE)
|
26
|
+
|
27
|
+
---
|
28
|
+
|
29
|
+
<!-- All the above is about the Petridish theme, so you might want to remove that. -->
|
30
|
+
|
31
|
+
_The instructions below can be adapted/included in the README of your site repository._
|
32
|
+
|
33
|
+
## Usage
|
34
|
+
|
35
|
+
This website makes use of the static website generator [Jekyll](https://jekyllrb.com/) and the [Petridish](https://github.com/peterdesmet/petridish) theme. **Each commit to `main` will automatically trigger a new build on GitHub Pages.** There is no need to build the site locally, but you can by installing Jekyll and running `bundle exec jekyll serve`.
|
36
|
+
|
37
|
+
Minor changes can be committed directly to `main`.
|
38
|
+
|
39
|
+
Changes requiring review (e.g. new blog posts) should be created in a separate branch and submitted as a pull request. Some guidelines:
|
40
|
+
|
41
|
+
- Use `72dpi` as image resolution
|
42
|
+
- Place background images in `assets/backgrounds/`, name them after their corresponding page/post and ideally crop them to `2100 x 700px`
|
43
|
+
- Place content images in `assets/images/`, name them after their corresponding page/post + a suffix, e.g. `-figure-1`
|
44
|
+
- Add tags to posts to create relevant groups (e.g. same topic, project).
|
45
|
+
- Create internal links as `[previous post]({{ '/permalink/to/post/' | relative_url }})`
|
46
|
+
|
47
|
+
## Repo structure
|
48
|
+
|
49
|
+
The repository structure follows that of Jekyll websites.
|
50
|
+
|
51
|
+
- General site settings: [_config.yml](_config.yml)
|
52
|
+
- Pages: [pages/](pages/)
|
53
|
+
- Posts: [_posts/](_posts/)
|
54
|
+
- Images & static files: [assets/](assets/)
|
55
|
+
- Top navigation: [_data/navigation.yml](_data/navigation.yml)
|
56
|
+
- Footer content: [_data/footer.yml](_data/footer.yml)
|
57
|
+
- Team members: [_data/team.yml](_data/team.yml)
|
data/_config.yml
ADDED
@@ -0,0 +1,54 @@
|
|
1
|
+
# SITE SETTINGS
|
2
|
+
title: Petridish # Title in top navigation bar (navbar) and <head>
|
3
|
+
author: Peter Desmet # Used for copyright statement in footer
|
4
|
+
baseurl: "/petridish" # Only required if your site is in a directory e.g. https://username.github.io/sitename
|
5
|
+
# which has url: "https://username.github.io" (no slash) and baseurl: "/sitename" (leading slash)
|
6
|
+
# A baseurl affects internal links, see http://peterdesmet.github.io/petridish/markdown/#links
|
7
|
+
|
8
|
+
# SOCIAL PROFILES
|
9
|
+
social:
|
10
|
+
email: name@example.com
|
11
|
+
twitter: peterdesmet
|
12
|
+
github: github_username # Can also be a github_username/repository
|
13
|
+
mastodon: https://mastodon.social/@mastodon_username
|
14
|
+
facebook: # A URL
|
15
|
+
disqus: disqus_sitename # Enable Disqus comments from disqus_sitename.disqus.com
|
16
|
+
|
17
|
+
# THEME SETTINGS (ALL OPTIONAL)
|
18
|
+
posts_on_home: 3 # Show x number of latest posts on homepage, can be 0
|
19
|
+
tweets_on_home: true # Show Twitter feed of social.twitter on homepage
|
20
|
+
archive_permalink: /blog/ # Permalink of page using the archive.html layout, required when using post tags
|
21
|
+
github_edit: true # Show an "edit this page" link in the footer, can also be name of branch (default: main)
|
22
|
+
colors:
|
23
|
+
links: "#007bff" # Color for links: use a readable color that contrasts well with dark text
|
24
|
+
banner: "#007bff" # Background color for page banners: use color that contrasts well with white
|
25
|
+
footer: "#6c757d" # Background color for footer: use color that contrasts well with white
|
26
|
+
font_serif: true # Font type for page content: serif (default) or slightly smaller sans-serif
|
27
|
+
rounded_corners: true # Enable (default) rounded corners on boxes and buttons
|
28
|
+
logo: /assets/theme/images/petri-dish_1f9eb.png # Logo in navbar, will be displayed with 30px height
|
29
|
+
|
30
|
+
# BUILD SETTINGS
|
31
|
+
markdown: kramdown
|
32
|
+
plugins: # If you build your site on gh-pages, only use these plugins: https://pages.github.com/versions/
|
33
|
+
- jekyll-feed
|
34
|
+
- jekyll-sitemap
|
35
|
+
exclude:
|
36
|
+
- README.md
|
37
|
+
- Gemfile
|
38
|
+
- Gemfile.lock
|
39
|
+
- node_modules
|
40
|
+
- LICENSE
|
41
|
+
- package-lock.json
|
42
|
+
- package.json
|
43
|
+
- petridish.gemspec
|
44
|
+
|
45
|
+
# FRONTMATTER DEFAULTS
|
46
|
+
defaults:
|
47
|
+
- scope:
|
48
|
+
path: ""
|
49
|
+
values:
|
50
|
+
layout: default # Use default.html layout by default for all files
|
51
|
+
- scope:
|
52
|
+
type: posts
|
53
|
+
values:
|
54
|
+
permalink: "/blog/:year/:slug/" # Use /blog/yyyy/{filename}/ as permalink for all posts
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# Links listed below will be included in your site's navbar (navigation at the top)
|
2
|
+
|
3
|
+
- text: "Courses 2022" # Note that users can reach the homepage by clicking the site's title on the left in the navbar
|
4
|
+
href: /docs/custom-navigation/
|
5
|
+
- text: Courses
|
6
|
+
menu:
|
7
|
+
- text: Course 1
|
8
|
+
href: true
|
9
|
+
- text: Course 2
|
10
|
+
href: true
|
11
|
+
- text: Exercises
|
12
|
+
href: true
|
13
|
+
|
data/_data/footer.yml
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# Footer content is organized in columns, with the first one reserved for social icons (defined in _config.yml).
|
2
|
+
# You can also add a small print license statement at the bottom.
|
3
|
+
|
4
|
+
# Columns (the more you add, the narrower they will be)
|
5
|
+
columns:
|
6
|
+
- description:
|
7
|
+
links:
|
8
|
+
- text: Name of project partner 1
|
9
|
+
href: http://example.com
|
10
|
+
new_window: true
|
11
|
+
- text: Prestigious and long name of project partner 2
|
12
|
+
href: http://example.com
|
13
|
+
new_window: true
|
14
|
+
|
15
|
+
- description: > # E.g. funding acknowledgement. Can be Markdown
|
16
|
+
This project is made with ❤ for open source.
|
17
|
+
See [`_data/footer.yml`](https://raw.githubusercontent.com/peterdesmet/petridish/master/_data/footer.yml)
|
18
|
+
to customize this text.
|
19
|
+
links:
|
20
|
+
|
21
|
+
# Small print license statement to add at the bottom of the footer. Can be Markdown
|
22
|
+
# Will be prefixed by "© {{ site.author }}" if defined in _config.yml
|
23
|
+
license: >
|
24
|
+
Content on this site is licensed under a [CC BY 4.0 License](http://creativecommons.org/licenses/by/4.0/).
|
25
|
+
\| Theme: [Petridish](https://github.com/peterdesmet/petridish)
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# Links listed below will be included in your site's navbar (navigation at the top)
|
2
|
+
|
3
|
+
- text: Home # Note that users can also reach the homepage by clicking the site's title on the left in the navbar
|
4
|
+
href: /
|
5
|
+
- text: About
|
6
|
+
href: /about/
|
7
|
+
- text: Team
|
8
|
+
href: /team/
|
9
|
+
- text: Blog
|
10
|
+
href: /blog/
|
11
|
+
- text: Documentation
|
12
|
+
menu: # Dropdown menu (one level deep only)
|
13
|
+
- text: Installation
|
14
|
+
href: /docs/installation/
|
15
|
+
- text: Configuration
|
16
|
+
href: /docs/configuration/
|
17
|
+
- href: /docs/markdown/ # Undefined "text" will automatically get the title of the page at "href" (here "Markdown")
|
18
|
+
- text: "---" # Divider to separate blocks of menu items (at least 3 "-")
|
19
|
+
- text: "Dropdown header" # Title for block of menu items
|
20
|
+
- text: Page with custom navigation
|
21
|
+
href: /docs/custom-navigation/
|
22
|
+
- text: GitHub
|
23
|
+
href: https://github.com/peterdesmet/petridish/
|
24
|
+
new_window: true
|
data/_data/team.yml
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
# Project team members listed below will appear on the /team page
|
2
|
+
|
3
|
+
- name: Philip J. Fry
|
4
|
+
role: Delivery boy # Will appear next to name
|
5
|
+
image: assets/theme/images/fry_ethan-hoover-311143-unsplash.jpg # Can be external link
|
6
|
+
description: > # Can be Markdown
|
7
|
+
Protagonist, from the 20th century. Many times great-uncle to Professor Hubert Farnsworth.
|
8
|
+
orcid: 0000-0000-0000-0000
|
9
|
+
researchgate: researchgate_username
|
10
|
+
googlescholar: googlescholar_username
|
11
|
+
twitter: twitter_username
|
12
|
+
mastodon: https://mastodon.social/@mastodon_username
|
13
|
+
github: github_username
|
14
|
+
email: name@example.com
|
15
|
+
|
16
|
+
- name: Turanga Leela
|
17
|
+
role: Captain
|
18
|
+
description: >
|
19
|
+
Mutant cyclops. Leela is spaceship captain, pilot, and head of all
|
20
|
+
aviation services on board the [Planet Express Ship](https://en.wikipedia.org/wiki/Planet_Express_Ship).
|
21
|
+
|
22
|
+
- name: Professor Hubert J. Farnsworth
|
23
|
+
role: CEO & Owner
|
24
|
+
image: assets/theme/images/farnsworth_angelo-abear-1662775-unsplash.jpg
|
25
|
+
description: >
|
26
|
+
Many times great-nephew of Fry. Tenured professor of [Mars University](https://en.wikipedia.org/wiki/Mars_University).
|
data/_includes/card.html
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
{% if item.background.first %}
|
2
|
+
{% assign background = item.background.img %}
|
3
|
+
{% else %}
|
4
|
+
{% assign background = item.background %}
|
5
|
+
{% endif %}
|
6
|
+
|
7
|
+
<div class="card" data-tags="{% for tag in item.tags %}{{ tag | downcase | strip }}|{% endfor %}">
|
8
|
+
<a href="{{ item.url | relative_url }}">
|
9
|
+
{% if item.background %}
|
10
|
+
<img class="card-img-top" src="{{ background | relative_url }}" alt="Background image">
|
11
|
+
{% else %}
|
12
|
+
<div class="card-img-top bg-secondary"></div>
|
13
|
+
{% endif %}
|
14
|
+
</a>
|
15
|
+
|
16
|
+
<div class="card-body position-relative">
|
17
|
+
<h5 class="card-title">
|
18
|
+
<a class="stretched-link" href="{{ item.url | relative_url }}">{{ item.title }}</a>
|
19
|
+
</h5>
|
20
|
+
|
21
|
+
{% if item.collection == 'posts' %}
|
22
|
+
<h6 class="card-subtitle">{{ item.date | date: '%B %d, %Y' }}</h6>
|
23
|
+
{% endif %}
|
24
|
+
|
25
|
+
<div class="card-text">
|
26
|
+
{% if item.description %}
|
27
|
+
{{ item.description | markdownify | strip_html | truncatewords: 20 }}
|
28
|
+
{% else %}
|
29
|
+
{{ item.excerpt | strip_html | truncatewords: 20 }}
|
30
|
+
{% endif %}
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
|
34
|
+
{% if item.collection == 'posts' and item.tags and site.archive_permalink %}
|
35
|
+
<div class="card-footer">
|
36
|
+
{% for tag in item.tags %}
|
37
|
+
<a class="badge{% if site.rounded_corners != false %} rounded-pill{% endif %}" href="{{ site.archive_permalink | relative_url }}?tag={{ tag | url_encode }}">{{ tag }}</a>
|
38
|
+
{% endfor %}
|
39
|
+
</div>
|
40
|
+
{% endif %}
|
41
|
+
</div>
|
@@ -0,0 +1,125 @@
|
|
1
|
+
<footer>
|
2
|
+
<div class="container">
|
3
|
+
<div class="row">
|
4
|
+
{% if site.social %}
|
5
|
+
<div class="col-lg">
|
6
|
+
<ul class="list-inline">
|
7
|
+
{% if site.social.email %}
|
8
|
+
<li class="list-inline-item">
|
9
|
+
<a href="mailto:{{ site.social.email }}">
|
10
|
+
<span class="fa-stack fa-lg">
|
11
|
+
<i class="fas fa-circle fa-stack-2x"></i>
|
12
|
+
<i class="far fa-envelope fa-stack-1x fa-inverse"></i>
|
13
|
+
</span>
|
14
|
+
</a>
|
15
|
+
</li>
|
16
|
+
{% endif %}
|
17
|
+
|
18
|
+
{% if site.social.twitter %}
|
19
|
+
<li class="list-inline-item">
|
20
|
+
<a href="https://twitter.com/{{ site.social.twitter }}">
|
21
|
+
<span class="fa-stack fa-lg">
|
22
|
+
<i class="fas fa-circle fa-stack-2x"></i>
|
23
|
+
<i class="fab fa-twitter fa-stack-1x fa-inverse"></i>
|
24
|
+
</span>
|
25
|
+
</a>
|
26
|
+
</li>
|
27
|
+
{% endif %}
|
28
|
+
|
29
|
+
{% if site.social.mastodon %}
|
30
|
+
<li class="list-inline-item">
|
31
|
+
<a rel="me" href="{{ site.social.mastodon }}">
|
32
|
+
<span class="fa-stack fa-lg">
|
33
|
+
<i class="fas fa-circle fa-stack-2x"></i>
|
34
|
+
<i class="fab fa-mastodon fa-stack-1x fa-inverse"></i>
|
35
|
+
</span>
|
36
|
+
</a>
|
37
|
+
</li>
|
38
|
+
{% endif %}
|
39
|
+
|
40
|
+
{% if site.social.facebook %}
|
41
|
+
<li class="list-inline-item">
|
42
|
+
<a red="me" href="{{ site.social.facebook }}">
|
43
|
+
<span class="fa-stack fa-lg">
|
44
|
+
<i class="fas fa-circle fa-stack-2x"></i>
|
45
|
+
<i class="fab fa-facebook fa-stack-1x fa-inverse"></i>
|
46
|
+
</span>
|
47
|
+
</a>
|
48
|
+
</li>
|
49
|
+
{% endif %}
|
50
|
+
|
51
|
+
{% if site.social.github %}
|
52
|
+
<li class="list-inline-item">
|
53
|
+
<a href="https://github.com/{{ site.social.github }}">
|
54
|
+
<span class="fa-stack fa-lg">
|
55
|
+
<i class="fas fa-circle fa-stack-2x"></i>
|
56
|
+
<i class="fab fa-github fa-stack-1x fa-inverse"></i>
|
57
|
+
</span>
|
58
|
+
</a>
|
59
|
+
</li>
|
60
|
+
{% endif %}
|
61
|
+
|
62
|
+
{% if site.archive_permalink %}
|
63
|
+
<li class="list-inline-item">
|
64
|
+
<a href="{{ '/feed.xml' | absolute_url }}">
|
65
|
+
<span class="fa-stack fa-lg">
|
66
|
+
<i class="fas fa-circle fa-stack-2x"></i>
|
67
|
+
<i class="fas fa-rss fa-stack-1x fa-inverse"></i>
|
68
|
+
</span>
|
69
|
+
</a>
|
70
|
+
</li>
|
71
|
+
{% endif %}
|
72
|
+
</ul>
|
73
|
+
</div>
|
74
|
+
{% endif %}
|
75
|
+
|
76
|
+
{% for col in site.data.footer.columns %}
|
77
|
+
<div class="col-lg">
|
78
|
+
{{ col.description | markdownify }}
|
79
|
+
|
80
|
+
{% if col.links %}
|
81
|
+
<ul class="fa-ul">
|
82
|
+
{% for item in col.links %}
|
83
|
+
<li>
|
84
|
+
<i class="fa-li fa fa-chevron-circle-right"></i>
|
85
|
+
<a href="{{ item.href | relative_url }}"{% if item.new_window %} target="_blank"{% endif %}>{{ item.text }}</a>
|
86
|
+
</li>
|
87
|
+
{% endfor %}
|
88
|
+
</ul>
|
89
|
+
{% endif %}
|
90
|
+
</div>
|
91
|
+
{% endfor %}
|
92
|
+
</div>
|
93
|
+
|
94
|
+
<div class="small mt-2">
|
95
|
+
{% if site.author %}
|
96
|
+
<p>© {{ site.author }}</p>
|
97
|
+
{% endif %}
|
98
|
+
{% if site.data.footer.license %}
|
99
|
+
{{ site.data.footer.license | markdownify }}
|
100
|
+
{% endif %}
|
101
|
+
{% if site.github_edit %}
|
102
|
+
{% if site.github_edit contains '' %}
|
103
|
+
{% assign branch = site.github_edit %}
|
104
|
+
{% else %}
|
105
|
+
{% assign branch = 'main' %}
|
106
|
+
{% endif %}
|
107
|
+
<p>
|
108
|
+
<a href="{{ site.github.repository_url }}/edit/{{ branch }}/{{ page.path }}">
|
109
|
+
<i class="fas fa-edit"></i> Edit this page
|
110
|
+
</a>
|
111
|
+
</p>
|
112
|
+
{% endif %}
|
113
|
+
</div>
|
114
|
+
</div>
|
115
|
+
</footer>
|
116
|
+
|
117
|
+
<script src="{{ '/assets/theme/js/anchor.min.js' | relative_url }}"></script>
|
118
|
+
<script>
|
119
|
+
// Show anchors when hovering over headings, using anchor.js
|
120
|
+
(function () {
|
121
|
+
const headings = ".content h2[id], .content h3[id], .content h4[id], .content h5[id], .content h6[id]";
|
122
|
+
anchors.options = { placement: "right" };
|
123
|
+
anchors.add(headings);
|
124
|
+
})();
|
125
|
+
</script>
|
data/_includes/head.html
ADDED
@@ -0,0 +1,69 @@
|
|
1
|
+
<head>
|
2
|
+
<meta charset="utf-8">
|
3
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
4
|
+
|
5
|
+
{% if page.layout == 'home' %}
|
6
|
+
<title>{{ site.title }}</title>
|
7
|
+
{% else %}
|
8
|
+
<title>{{ page.title }} - {{ site.title }}</title>
|
9
|
+
{% endif %}
|
10
|
+
|
11
|
+
{% comment %}Deprecated variables{% endcomment %}
|
12
|
+
{% if site.email %}
|
13
|
+
{% assign site.social.email = site.email %}
|
14
|
+
{% endif %}
|
15
|
+
{% if site.twitter_username %}
|
16
|
+
{% assign site.social.twitter = site.twitter_username %}
|
17
|
+
{% endif %}
|
18
|
+
{% if site.github_username %}
|
19
|
+
{% assign site.social.github = site.github_username %}
|
20
|
+
{% endif %}
|
21
|
+
|
22
|
+
{% if page.description %}
|
23
|
+
{% assign description = page.description | markdownify | strip_html | newline_to_br | split: '<br />' | first %}
|
24
|
+
{% endif %}
|
25
|
+
{% if description %}
|
26
|
+
<meta name="description" content="{{ description }}">
|
27
|
+
{% endif %}
|
28
|
+
{% if page.author %}
|
29
|
+
{% assign author = page.author | join: ", " %}
|
30
|
+
{% else %}
|
31
|
+
{% assign author = site.author %}
|
32
|
+
{% endif %}
|
33
|
+
{% if author %}
|
34
|
+
<meta name="author" content="{{ author }}">
|
35
|
+
{% endif %}
|
36
|
+
{% if site.remote_theme %}
|
37
|
+
<meta name="generator" content="Jekyll, theme: {{ site.remote_theme }}">
|
38
|
+
{% endif %}
|
39
|
+
|
40
|
+
<meta property="og:url" content="{{ page.url | absolute_url }}">
|
41
|
+
<meta property="og:type" content="{% if page.collection == 'posts' %}article{% else %}website{% endif %}">
|
42
|
+
<meta property="og:title" content="{{ page.title }}">
|
43
|
+
{% if description %}
|
44
|
+
<meta property="og:description" content="{{ description }}">
|
45
|
+
{% endif %}
|
46
|
+
{% if page.background.first %}
|
47
|
+
{% assign background = page.background.img %}
|
48
|
+
{% else %}
|
49
|
+
{% assign background = page.background %}
|
50
|
+
{% endif %}
|
51
|
+
{% if background %}
|
52
|
+
<meta property="og:image" content="{{ background | absolute_url }}">
|
53
|
+
{% endif %}
|
54
|
+
|
55
|
+
<link rel="icon" type="image/x-icon" href="{{ '/favicon.ico' | absolute_url }}">
|
56
|
+
<!-- Bootstrap CSS is included in main.css -->
|
57
|
+
<link rel="stylesheet" href="{{ '/assets/theme/css/main.css' | relative_url }}">
|
58
|
+
<link rel="stylesheet" href="{{ '/assets/theme/css/fontawesome-all.min.css' | relative_url }}">
|
59
|
+
<link rel="stylesheet" href="{{ '/assets/theme/css/academicons.min.css' | relative_url }}">
|
60
|
+
<link rel="stylesheet" href="{{ '/assets/theme/css/pygments.css' | relative_url }}">
|
61
|
+
{% if site.font_serif != false %}
|
62
|
+
<link href="https://fonts.googleapis.com/css?family=Lora:400,400i,700,700i&display=swap" rel="stylesheet">
|
63
|
+
{% endif %}
|
64
|
+
<link rel="alternate" type="application/rss+xml" title="{{ site.title }} - RSS feed" href="{{ '/feed.xml' | absolute_url }}" >
|
65
|
+
<!-- Javascript libraries: loaded at top so templates can use these -->
|
66
|
+
<script src="{{ '/assets/theme/js/jquery.min.js' | relative_url }}"></script>
|
67
|
+
<script src="{{ '/assets/theme/js/popper.min.js' | relative_url }}"></script>
|
68
|
+
<script src="{{ '/assets/theme/js/bootstrap.min.js' | relative_url }}"></script>
|
69
|
+
</head>
|
@@ -0,0 +1,42 @@
|
|
1
|
+
{% comment %}background is defined in head.html{% endcomment %}
|
2
|
+
{% if background %}
|
3
|
+
<header class="header bg-image" style="background-image: url('{{ background | relative_url }}')">
|
4
|
+
{% else %}
|
5
|
+
<header class="header bg-no-image">
|
6
|
+
{% endif %}
|
7
|
+
<div class="container">
|
8
|
+
<div class="row">
|
9
|
+
<div class="col-md-10 col-lg-8 position-relative mx-auto">
|
10
|
+
<h1{% if page.layout == 'home' %} class="home"{% endif %}>{{ page.title }}</h1>
|
11
|
+
|
12
|
+
<div class="lead">{{ page.description | markdownify }}</div>
|
13
|
+
|
14
|
+
{% if page.collection == 'posts' %}
|
15
|
+
<p class="meta">
|
16
|
+
<time>{{ page.date | date: '%B %d, %Y' }}</time>
|
17
|
+
{% if page.author or page.authors %}
|
18
|
+
• {{ page.author | join: ', ' }}{{ page.authors | join: ', ' }}
|
19
|
+
{% endif %}
|
20
|
+
</p>
|
21
|
+
{% endif %}
|
22
|
+
|
23
|
+
<div class="tags">
|
24
|
+
{% if page.collection == 'posts' and page.tags and site.archive_permalink %}
|
25
|
+
{% for tag in page.tags %}
|
26
|
+
<a class="badge{% if site.rounded_corners != false %} rounded-pill{% endif %}" href="{{ site.archive_permalink | relative_url }}?tag={{ tag | url_encode }}">{{ tag }}</a>
|
27
|
+
{% endfor %}
|
28
|
+
{% endif %}
|
29
|
+
</div>
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
{% if page.background.img and page.background.by %}
|
34
|
+
<div class="caption">
|
35
|
+
{% if page.background.href %}
|
36
|
+
Image by <a href="{{ page.background.href }}">{{ page.background.by }}</a>
|
37
|
+
{% else %}
|
38
|
+
Image by {{ page.background.by }}
|
39
|
+
{% endif %}
|
40
|
+
</div>
|
41
|
+
{% endif %}
|
42
|
+
</header>
|
@@ -0,0 +1,58 @@
|
|
1
|
+
<nav class="navbar navbar-expand-lg navbar-light bg-light" id="main-nav">
|
2
|
+
<div class="container">
|
3
|
+
<a class="navbar-brand d-flex align-items-center" href="{{'/' | relative_url }}">
|
4
|
+
{% if site.logo %}
|
5
|
+
<img class="me-3" src="{{ site.logo | relative_url }}" alt="{{ site.title }}">
|
6
|
+
{% endif %}
|
7
|
+
{{ site.title }}
|
8
|
+
</a>
|
9
|
+
{% if page.navigation and site.data[page.navigation] %}
|
10
|
+
{% assign navigation = site.data[page.navigation] %}
|
11
|
+
{% elsif site.data.navigation %}
|
12
|
+
{% assign navigation = site.data.navigation %}
|
13
|
+
{% endif %}
|
14
|
+
{% if navigation %}
|
15
|
+
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar-menu">
|
16
|
+
Menu <i class="fas fa-bars"></i>
|
17
|
+
</button>
|
18
|
+
<div class="collapse navbar-collapse" id="navbar-menu">
|
19
|
+
<ul class="navbar-nav ms-auto">
|
20
|
+
{% for item in navigation %}
|
21
|
+
{% if item.menu %}
|
22
|
+
<li class="nav-item dropdown">
|
23
|
+
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown">
|
24
|
+
{{ item.text }}
|
25
|
+
</a>
|
26
|
+
<div class="dropdown-menu dropdown-menu-end">
|
27
|
+
{% for subitem in item.menu %}
|
28
|
+
{% if subitem.href %}
|
29
|
+
{% if subitem.text contains '' %}
|
30
|
+
{% assign subitem_text = subitem.text %}
|
31
|
+
{% else %}
|
32
|
+
{% assign subitem_text = site.pages | where: 'url', subitem.href | map: 'title' | first %}
|
33
|
+
{% endif %}
|
34
|
+
<a class="dropdown-item{% if subitem.href == page.url %} active{% endif %}" href="{{ subitem.href | relative_url }}"{% if subitem.new_window %} target="_blank"{% endif %}>{{ subitem_text }}</a>
|
35
|
+
{% elsif subitem.text contains '---' %}
|
36
|
+
<div class="dropdown-divider"></div>
|
37
|
+
{% else %}
|
38
|
+
<h6 class="dropdown-header">{{ subitem.text }}</h6>
|
39
|
+
{% endif %}
|
40
|
+
{% endfor %}
|
41
|
+
</div>
|
42
|
+
</li>
|
43
|
+
{% else %}
|
44
|
+
<li class="navbar-item">
|
45
|
+
{% if item.text contains '' %}
|
46
|
+
{% assign item_text = item.text %}
|
47
|
+
{% else %}
|
48
|
+
{% assign item_text = site.pages | where: 'url', item.href | map: 'title' | first %}
|
49
|
+
{% endif %}
|
50
|
+
<a class="nav-link{% if item.href == page.url %} active{% endif %}" href="{{ item.href | relative_url }}"{% if item.new_window %} target="_blank"{% endif %}>{{ item_text }}</a>
|
51
|
+
</li>
|
52
|
+
{% endif %}
|
53
|
+
{% endfor %}
|
54
|
+
</ul>
|
55
|
+
</div>
|
56
|
+
{% endif %}
|
57
|
+
</div>
|
58
|
+
</nav>
|