jekyll-theme-rop 2.1.15
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.txt +21 -0
- data/README.md +1084 -0
- data/_config.yml +89 -0
- data/_data/placeholder.yml +0 -0
- data/_includes/_nav-item.html +38 -0
- data/_includes/_post-meta.html +24 -0
- data/_includes/external-link.html +59 -0
- data/_includes/featured_posts.html +11 -0
- data/_includes/featured_software.html +55 -0
- data/_includes/featured_specs.html +31 -0
- data/_includes/head.html +9 -0
- data/_includes/home-hero.html +27 -0
- data/_includes/home-hub.html +81 -0
- data/_includes/home-project.html +19 -0
- data/_includes/index-page-hero.html +3 -0
- data/_includes/index-page-item-filter.html +83 -0
- data/_includes/item-doc-page.html +138 -0
- data/_includes/item-external-links.html +5 -0
- data/_includes/legal.html +24 -0
- data/_includes/logo.html +1 -0
- data/_includes/nav-links.html +45 -0
- data/_includes/nav-page-link.html +17 -0
- data/_includes/post-author-pic.html +13 -0
- data/_includes/post-card.html +59 -0
- data/_includes/project-doc-page.html +0 -0
- data/_includes/project-nav.html +0 -0
- data/_includes/scripts.html +0 -0
- data/_includes/social-links.html +23 -0
- data/_includes/software-card-hub.html +45 -0
- data/_includes/software-symbol.html +6 -0
- data/_includes/symbol.svg +19 -0
- data/_includes/tag-list.html +17 -0
- data/_includes/title.html +1 -0
- data/_layouts/blog-index.html +19 -0
- data/_layouts/default.html +156 -0
- data/_layouts/docs-base.html +87 -0
- data/_layouts/home.html +13 -0
- data/_layouts/page.html +5 -0
- data/_layouts/post.html +57 -0
- data/_layouts/product.html +9 -0
- data/_layouts/project-index.html +45 -0
- data/_layouts/software-index.html +31 -0
- data/_layouts/spec-index.html +31 -0
- data/_layouts/spec.html +6 -0
- data/_pages/blog.html +8 -0
- data/_pages/software.html +6 -0
- data/_pages/specs.html +6 -0
- data/_sass/headroom.scss +22 -0
- data/_sass/jekyll-theme-open-project.scss +2 -0
- data/_sass/jekyll-theme-rop.scss +798 -0
- data/_sass/normalize.scss +424 -0
- data/_sass/rop-base.scss +572 -0
- data/_sass/rop-header-footer.scss +366 -0
- data/_sass/rop-mixins.scss +871 -0
- data/assets/css/style.scss +13 -0
- data/assets/fa/fa-brands.js +456 -0
- data/assets/fa/fa-solid.js +915 -0
- data/assets/fa/fontawesome.js +1805 -0
- data/assets/img/external-link.svg +4 -0
- data/assets/js/adoc-toc.js +175 -0
- data/assets/js/anchor-scroll.js +81 -0
- data/assets/js/clipboard.min.js +7 -0
- data/assets/js/headroom.min.js +7 -0
- data/assets/js/opf.js +289 -0
- data/assets/listing-widget.js +19 -0
- metadata +276 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
<span class="copyright">
|
2
|
+
<span class="copyright-head">Copyright © {{ site.time | date: '%Y' }} {{ site.legal.name }} —</span>
|
3
|
+
<span class="copyright-tail">All rights reserved.</span>
|
4
|
+
</span>
|
5
|
+
|
6
|
+
{% if site.legal.privacy_policy_link or site.legal.tos_link %}
|
7
|
+
<nav aria-label="legal links">
|
8
|
+
{% if site.legal.tos_link %}
|
9
|
+
<a href="{{ site.legal.tos_link }}">Terms of Service</a>
|
10
|
+
{% endif %}
|
11
|
+
{% if site.legal.privacy_policy_link %}
|
12
|
+
<a href="{{ site.legal.privacy_policy_link }}">Privacy Policy</a>
|
13
|
+
{% endif %}
|
14
|
+
{% if site.legal.security_advisories_link %}
|
15
|
+
<a href="{{ site.legal.security_advisories_link }}">Advisories</a>
|
16
|
+
{% endif %}
|
17
|
+
{% if site.legal.disclosure_policy_link %}
|
18
|
+
<a href="{{ site.legal.disclosure_policy_link }}">Disclosure policy</a>
|
19
|
+
{% endif %}
|
20
|
+
{% if site.legal.security_feedback_link %}
|
21
|
+
<a href="{{ site.legal.security_feedback_link }}">Security feedback</a>
|
22
|
+
{% endif %}
|
23
|
+
</nav>
|
24
|
+
{% endif %}
|
data/_includes/logo.html
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
<span aria-label="project logo" class="symbol">{% include assets/symbol.svg %}</span> <span class="title">{% include title.html %}</span>
|
@@ -0,0 +1,45 @@
|
|
1
|
+
{% assign contact_link = "mailto:" | append: site.contact_email %}
|
2
|
+
|
3
|
+
{% if site.algolia_search %}
|
4
|
+
<div class="search-widget">
|
5
|
+
<input type="search" id="siteSearchInput" placeholder="Type to search…">
|
6
|
+
</div>
|
7
|
+
{% endif %}
|
8
|
+
|
9
|
+
{% if site.is_hub %}
|
10
|
+
{% include nav-page-link.html htmlclass="projects" url="/projects/" title="Projects" %}
|
11
|
+
|
12
|
+
{% if site.num_all_software > 0 %}
|
13
|
+
{% include nav-page-link.html htmlclass="software" url="/software/" title="Software" active_for_nested=true %}
|
14
|
+
{% endif %}
|
15
|
+
{% if site.num_all_specs > 0 %}
|
16
|
+
{% include nav-page-link.html htmlclass="specs" url="/specs/" title="Specifications" active_for_nested=true %}
|
17
|
+
{% endif %}
|
18
|
+
{% if site.num_posts_combined > 0 %}
|
19
|
+
{% include nav-page-link.html htmlclass="blog" url="/blog/" title="Blog" active_for_nested=true %}
|
20
|
+
{% endif %}
|
21
|
+
|
22
|
+
{% else %}
|
23
|
+
|
24
|
+
{% if site.one_software %}
|
25
|
+
{% include nav-page-link.html htmlclass="docs" url=site.one_software.url title="Docs" active_for_nested=true %}
|
26
|
+
{% else %}
|
27
|
+
{% if site.num_all_software > 0 %}
|
28
|
+
{% include nav-page-link.html htmlclass="software" url="/software/" title="Software" active_for_nested=true %}
|
29
|
+
{% endif %}
|
30
|
+
{% endif %}
|
31
|
+
|
32
|
+
{% if site.num_all_specs > 0 %}
|
33
|
+
{% include nav-page-link.html htmlclass="specs" url="/specs/" title="Specifications" active_for_nested=true %}
|
34
|
+
{% endif %}
|
35
|
+
|
36
|
+
{% include project-nav.html %}
|
37
|
+
|
38
|
+
{% if site.num_posts_combined > 0 %}
|
39
|
+
{% include nav-page-link.html htmlclass="blog" url="/blog/" title="Blog" active_for_nested=true %}
|
40
|
+
{% endif %}
|
41
|
+
{% endif %}
|
42
|
+
|
43
|
+
{% if site.algolia_search %}
|
44
|
+
<a href="javascript: void 0;" class="search"><i class="fas fa-search"></i></a>
|
45
|
+
{% endif %}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
{% if include.active_for_nested %}
|
2
|
+
{% assign first_component_of_current_url = page.url | split: '/' | slice: 0, 2 | join: '/' | append: '/' %}
|
3
|
+
{% assign first_component_of_link_url = include.url | split: '/' | slice: 0, 2 | join: '/' | append: '/' %}
|
4
|
+
{% if first_component_of_current_url == first_component_of_link_url %}
|
5
|
+
{% assign active_nested = true %}
|
6
|
+
{% else %}
|
7
|
+
{% assign active_nested = false %}
|
8
|
+
{% endif %}
|
9
|
+
{% endif %}
|
10
|
+
|
11
|
+
{% if active_nested or page.url == include.url %}
|
12
|
+
<a class="active {{ include.htmlclass }}" href="{{ include.url }}">{{ include.title }}</a>
|
13
|
+
{% else %}
|
14
|
+
<a class="{{ include.htmlclass }}" href="{{ include.url }}">{{ include.title }}</a>
|
15
|
+
{% endif %}
|
16
|
+
|
17
|
+
{% assign active_nested = false %}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
{% if include.author.email and include.author.use_picture != false %}
|
2
|
+
{% assign use_picture = include.author.use_picture | default: "gravatar" %}
|
3
|
+
<span class="author-avatar">
|
4
|
+
{% if use_picture == "gravatar" %}
|
5
|
+
{% assign author_pic_url = "https://gravatar.com/avatar/" | append: include.author.email | append: "?s=64" %}
|
6
|
+
{% elsif use_picture == "assets" %}
|
7
|
+
{% assign author_pic_url = "/assets/blog/authors/" | append: include.author.plaintext_email | append: ".jpg" %}
|
8
|
+
{% else %}
|
9
|
+
{% assign author_pic_url = "/assets" | append: use_picture %}
|
10
|
+
{% endif %}
|
11
|
+
<img src="{{ author_pic_url | relative_url }}" alt="Author’s picture">
|
12
|
+
</span>
|
13
|
+
{% endif %}
|
@@ -0,0 +1,59 @@
|
|
1
|
+
{% if include.post.parent_project %}
|
2
|
+
{% capture href %}{{ include.post.parent_project.home_url }}blog/{{ include.post.date | date: "%Y-%m-%d" }}-{{ include.post.slug }}/{% endcapture %}
|
3
|
+
{% else %}
|
4
|
+
{% capture href %}{{ include.post.url }}{% endcapture %}
|
5
|
+
{% endif %}
|
6
|
+
|
7
|
+
{% capture cover_image_src %}{% endcapture %}
|
8
|
+
{% if include.post.card_image %}
|
9
|
+
{% if include.post.parent_project %}
|
10
|
+
{% capture cover_image_src %}{{ include.post.parent_project.home_url }}{{ include.post.card_image }}{% endcapture %}
|
11
|
+
{% else %}
|
12
|
+
{% capture cover_image_src %}{{ include.post.card_image | relative_url }}{% endcapture %}
|
13
|
+
{% endif %}
|
14
|
+
{% endif %}
|
15
|
+
|
16
|
+
<a class="item
|
17
|
+
{% if include.post.parent_project %}has-parent-project{% endif %}
|
18
|
+
{% if cover_image_src != "" and include.can_be_featured %}has-cover-image{% endif %}"
|
19
|
+
href="{{ href }}" role="article">
|
20
|
+
|
21
|
+
{% if cover_image_src != "" and include.can_be_featured %}
|
22
|
+
<div class="cover-image">
|
23
|
+
<img src="{{ cover_image_src }}" alt="Cover image">
|
24
|
+
</div>
|
25
|
+
{% endif %}
|
26
|
+
|
27
|
+
<div class="card-body">
|
28
|
+
{% if include.post.parent_project == nil and site.is_hub == true %}
|
29
|
+
<div class="hub-symbol">
|
30
|
+
{% include assets/symbol.svg %}
|
31
|
+
</div>
|
32
|
+
{% endif %}
|
33
|
+
|
34
|
+
<header>
|
35
|
+
{% if include.post.parent_project %}
|
36
|
+
{% assign project_symbol_path = include.post.parent_project.name | append: "/assets/symbol.svg" %}
|
37
|
+
{% assign relative_symbol_path = "/projects/" | append: project_symbol_path %}
|
38
|
+
<div class="parent-project">
|
39
|
+
<div class="project-logo">
|
40
|
+
<img src="{{ relative_symbol_path }}">
|
41
|
+
</div>
|
42
|
+
<h4 class="project-title">{{ include.post.parent_project.title }}</h4>
|
43
|
+
<div class="external-link-icon">
|
44
|
+
<img src="{{ "assets/img/external-link.svg" | relative_url }}">
|
45
|
+
</div>
|
46
|
+
</div>
|
47
|
+
{% endif %}
|
48
|
+
<h3 class="title">{{ include.post.title }}</h3>
|
49
|
+
</header>
|
50
|
+
|
51
|
+
<p class="body">
|
52
|
+
{{ include.post.excerpt | remove: '<p>' | remove: '</p>' | remove: '<div class="presentation">' | remove: '<div class="paragraph">' | remove: '</div>' }}
|
53
|
+
</p>
|
54
|
+
|
55
|
+
<footer class="meta">
|
56
|
+
{% include _post-meta.html post=include.post %}
|
57
|
+
</footer>
|
58
|
+
</div>
|
59
|
+
</a>
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,23 @@
|
|
1
|
+
{% if site.social.links %}
|
2
|
+
<aside class="social-links">
|
3
|
+
{% for link in site.social.links %}
|
4
|
+
{% if link contains "twitter.com" %}
|
5
|
+
<a href="{{ link }}" aria-label="Twitter link">
|
6
|
+
<i class="fab fa-twitter"></i>
|
7
|
+
</a>
|
8
|
+
{% elsif link contains "github.com" %}
|
9
|
+
<a href="{{ link }}" aria-label="Github link">
|
10
|
+
<i class="fab fa-github"></i>
|
11
|
+
</a>
|
12
|
+
{% elsif link contains "facebook.com" %}
|
13
|
+
<a href="{{ link }}" aria-label="Facebook link">
|
14
|
+
<i class="fab fa-facebook"></i>
|
15
|
+
</a>
|
16
|
+
{% elsif link contains "linkedin.com" %}
|
17
|
+
<a href="{{ link }}" aria-label="LinkedIn link">
|
18
|
+
<i class="fab fa-linkedin"></i>
|
19
|
+
</a>
|
20
|
+
{% endif %}
|
21
|
+
{% endfor %}
|
22
|
+
</aside>
|
23
|
+
{% endif %}
|
@@ -0,0 +1,45 @@
|
|
1
|
+
{% if include.item.project_data != nil and include.item.project_name != nil %}
|
2
|
+
{% if include.item.slug == 'index' %}
|
3
|
+
{% assign item_slug = include.item.id | split: "/" | reverse | slice: 1 | first %}
|
4
|
+
{% else %}
|
5
|
+
{% assign item_slug = include.item.id | split: "/" | reverse | first %}
|
6
|
+
{% endif %}
|
7
|
+
{% assign product_home_url = include.item.project_data.home_url | append: include.item_type | append: "/" | append: item_slug | append: "/" %}
|
8
|
+
{% else %}
|
9
|
+
{% assign product_home_url = include.item.url | relative_url %}
|
10
|
+
{% endif %}
|
11
|
+
|
12
|
+
<a class="item {% if include.item.feature_with_priority != nil %}featured-item{% endif %}"
|
13
|
+
href="{{ product_home_url }}" role="article">
|
14
|
+
{% if include.item_type == 'software' and site.is_hub != true %}
|
15
|
+
<div class="logo-container">
|
16
|
+
{% include software-symbol.html item_id=include.item.id %}
|
17
|
+
</div>
|
18
|
+
{% endif %}
|
19
|
+
|
20
|
+
<header>
|
21
|
+
{% if include.item.project_data != nil and include.item.project_name != nil %}
|
22
|
+
{% assign project_symbol_path = include.item.project_name | append: "/assets/symbol.svg" %}
|
23
|
+
{% assign relative_symbol_path = "/projects/" | append: project_symbol_path %}
|
24
|
+
<div class="parent-project">
|
25
|
+
<div class="project-logo"><img src="{{ relative_symbol_path }}"></div>
|
26
|
+
<h4 class="project-title">{{ include.item.project_data.title }}</h4>
|
27
|
+
</div>
|
28
|
+
{% endif %}
|
29
|
+
<h3 class="title">{{ include.item.title }}</h3>
|
30
|
+
</header>
|
31
|
+
|
32
|
+
<p class="body">
|
33
|
+
{{ include.item.description }}
|
34
|
+
</p>
|
35
|
+
|
36
|
+
<footer class="meta">
|
37
|
+
{% include tag-list.html tags=include.item.tags item_type=include.item_type %}
|
38
|
+
|
39
|
+
{% if include.item.last_update %}
|
40
|
+
<section class="last-update">
|
41
|
+
Last update: {{ include.item.last_update | date: "%d/%m/%Y" }}
|
42
|
+
</section>
|
43
|
+
{% endif %}
|
44
|
+
</footer>
|
45
|
+
</a>
|
@@ -0,0 +1,6 @@
|
|
1
|
+
{% assign symbol_path = include.item_id | split: "/" | slice: 2, 1 | join: "/" | append: "/assets/symbol.svg" %}
|
2
|
+
{% assign relative_symbol_path = "/software/" | append: symbol_path %}
|
3
|
+
|
4
|
+
<div class="logo">
|
5
|
+
<img src="{{ relative_symbol_path }}" alt="Software icon">
|
6
|
+
</div>
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<svg viewBox="0 0 85 71" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
2
|
+
<g class="Canvas" fill="none">
|
3
|
+
<g class="fake logo">
|
4
|
+
<g class="Shape">
|
5
|
+
<path d="M 5.18494 26L 12 20.4972L 18.8151 26L 24 20.7672L 13.2167 0.676004C 12.733 -0.225335 11.267 -0.225335 10.7833 0.676004L 0 20.7672L 5.18494 26Z" transform="translate(30 0)" fill="#111111"/>
|
6
|
+
</g>
|
7
|
+
<g class="Shape_2">
|
8
|
+
<path d="M 75.83 45.8686L 51.6053 0L 45.1415 6.62958L 38 0.770372L 30.8585 6.62958L 24.3947 0L 0.16995 45.8686C -0.0664507 46.3169 -0.0554589 46.8582 0.198126 47.2952C 0.452387 47.7322 0.911439 48 1.4076 48L 74.5924 48C 75.0886 48 75.5476 47.7322 75.8019 47.2952C 76.0555 46.8582 76.0665 46.3169 75.83 45.8686Z" transform="translate(4 23)" fill="#111111"/>
|
9
|
+
</g>
|
10
|
+
<g class="Shape_3">
|
11
|
+
<path d="M 30 12.3799L 22.2626 0.635075C 21.9928 0.226511 21.5122 -0.0257198 21.0508 0.0020861C 20.5653 0.0166721 20.1225 0.283489 19.878 0.707351L 0.191654 34.8599C -0.0623847 35.3004 -0.0637627 35.8438 0.186845 36.2857C 0.437453 36.7276 0.90298 37 1.40626 37L 16.822 37L 30 12.3799Z" transform="translate(0 3)" fill="#905DEE"/>
|
12
|
+
</g>
|
13
|
+
<g class="Shape_4">
|
14
|
+
<path d="M 29.8083 34.8598L 10.1218 0.705378C 9.87741 0.281508 9.43454 0.0146767 8.94912 7.57049e-05C 8.48703 -0.0047913 8.0064 0.22521 7.73724 0.633099L 0 12.3789L 13.1779 37L 28.5937 37C 29.097 37 29.5625 36.7276 29.8131 36.2857C 30.0638 35.8437 30.0624 35.3003 29.8083 34.8598Z" transform="translate(55 3)" fill="#905DEE"/>
|
15
|
+
</g>
|
16
|
+
</g>
|
17
|
+
</g>
|
18
|
+
</svg>
|
19
|
+
|
@@ -0,0 +1,17 @@
|
|
1
|
+
{% assign num_tags = include.tags | size %}
|
2
|
+
{% if num_tags > 0 %}
|
3
|
+
<ul class="tags">
|
4
|
+
{% for tag in include.tags %}
|
5
|
+
{% if tag contains ":" %}
|
6
|
+
{% assign namespace_id = tag | split: ":" | first %}
|
7
|
+
{% assign namespace = site.tag_namespaces[include.item_type][namespace_id] %}
|
8
|
+
{% assign tag_human = tag | split: ":" | last | replace: "_", " " %}
|
9
|
+
{% else %}
|
10
|
+
{% assign tag_human = tag | replace: "_", " " %}
|
11
|
+
{% assign namespace = "" %}
|
12
|
+
{% endif %}
|
13
|
+
|
14
|
+
<li title="{{ tag_human }}">{% if namespace != "" %}<span class="namespace">{{ namespace }}:</span> {% endif %}{{ tag_human }}</li>
|
15
|
+
{% endfor %}
|
16
|
+
</ul>
|
17
|
+
{% endif %}
|
@@ -0,0 +1 @@
|
|
1
|
+
{{ site.title }}
|
@@ -0,0 +1,19 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<section class="items">
|
6
|
+
{% if site.is_hub %}
|
7
|
+
{% include assets/symbol.svg %}
|
8
|
+
{% endif %}
|
9
|
+
|
10
|
+
{% for item in site.posts_combined %}
|
11
|
+
{% if forloop.first %}
|
12
|
+
{% assign can_be_featured = true %}
|
13
|
+
{% else %}
|
14
|
+
{% assign can_be_featured = false %}
|
15
|
+
{% endif %}
|
16
|
+
|
17
|
+
{% include post-card.html post=item can_be_featured=can_be_featured %}
|
18
|
+
{% endfor %}
|
19
|
+
</section>
|
@@ -0,0 +1,156 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html lang="en">
|
3
|
+
|
4
|
+
<head>
|
5
|
+
<meta charset="utf-8">
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
7
|
+
|
8
|
+
<link href="{{ "/assets/favicon-192x192.png" | relative_url }}"
|
9
|
+
rel="shortcut icon"
|
10
|
+
sizes="192x192"
|
11
|
+
type="image/x-icon">
|
12
|
+
|
13
|
+
<link href="{{ "/assets/favicon.png" | relative_url }}"
|
14
|
+
rel="shortcut icon"
|
15
|
+
sizes="32x32"
|
16
|
+
type="image/x-icon">
|
17
|
+
|
18
|
+
<link href="{{ "/assets/favicon-192x192.png" | relative_url }}"
|
19
|
+
rel="apple-touch-icon">
|
20
|
+
|
21
|
+
<link id="themeCSS" rel="stylesheet" href="{{ "assets/css/style.css" | relative_url }}">
|
22
|
+
|
23
|
+
{% unless site.no_auto_fontawesome %}
|
24
|
+
<script
|
25
|
+
defer
|
26
|
+
src="https://use.fontawesome.com/releases/{{ site.fontawesome_cdn.version }}/js/all.js"
|
27
|
+
integrity="{{ site.fontawesome_cdn.integrity }}"
|
28
|
+
crossorigin="anonymous"></script>
|
29
|
+
{% endunless %}
|
30
|
+
|
31
|
+
{% if site.algolia_search %}
|
32
|
+
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css">
|
33
|
+
{% endif %}
|
34
|
+
|
35
|
+
{% if page.extra_stylesheets %}
|
36
|
+
{% for ss in page.extra_stylesheets %}
|
37
|
+
<link rel="stylesheet" href="{{ ss.href }}" integrity="{{ ss.integrity }}" crossorigin="{{ ss.crossorigin }}">
|
38
|
+
{% endfor %}
|
39
|
+
{% endif %}
|
40
|
+
|
41
|
+
{% if page.extra_scripts %}
|
42
|
+
{% for sc in page.extra_scripts %}
|
43
|
+
<script src="{{ sc.src }}" integrity="{{ sc.integrity }}" crossorigin="{{ sc.crossorigin }}"></script>
|
44
|
+
{% endfor %}
|
45
|
+
{% endif %}
|
46
|
+
|
47
|
+
{% seo %}
|
48
|
+
|
49
|
+
{% include head.html %}
|
50
|
+
</head>
|
51
|
+
|
52
|
+
{% assign num_projects = site.projects | size %}
|
53
|
+
<body class="
|
54
|
+
{{ page.html-class }} {{ layout.html-class }}
|
55
|
+
{% if num_projects > 0 %}
|
56
|
+
site--hub
|
57
|
+
{% else %}
|
58
|
+
site--project
|
59
|
+
{% if site.one_software %}site--project--one-software{% endif %}
|
60
|
+
{% endif %}
|
61
|
+
{% if page.layout %}layout--{{ page.layout }}{% endif %}">
|
62
|
+
<div class="underlay header">
|
63
|
+
<header>
|
64
|
+
<h1 class="site-logo"><a href="/">{% include logo.html %}</a></h1>
|
65
|
+
<nav class="top-menu">
|
66
|
+
{% include nav-links.html %}
|
67
|
+
</nav>
|
68
|
+
|
69
|
+
{% include social-links.html %}
|
70
|
+
|
71
|
+
<button class="hamburger" aria-expanded="false" id="hamburgerButton"
|
72
|
+
aria-label="top site menu toggle">
|
73
|
+
<i class="fa fa-bars"></i>
|
74
|
+
</button>
|
75
|
+
|
76
|
+
<div class="hamburger-menu" id="hamburgerMenu" aria-hidden="true">
|
77
|
+
<div class="site-logo-container">
|
78
|
+
<h1 class="site-logo"><a href="/">{% include logo.html %}</a></h1>
|
79
|
+
</div>
|
80
|
+
|
81
|
+
{% include social-links.html %}
|
82
|
+
</div>
|
83
|
+
</header>
|
84
|
+
|
85
|
+
{% if page.hero_include %}
|
86
|
+
<div class="hero">{% include {{ page.hero_include }} %}</div>
|
87
|
+
{% endif %}
|
88
|
+
</div>
|
89
|
+
|
90
|
+
<main>
|
91
|
+
{{ content }}
|
92
|
+
</main>
|
93
|
+
|
94
|
+
<div class="underlay footer">
|
95
|
+
<footer>
|
96
|
+
{% if site.num_all_specs > 0 or site.num_all_software > 0 or site.extra_footer_links %}
|
97
|
+
<nav class="links" aria-label="site links">
|
98
|
+
{% for link in site.extra_footer_links %}
|
99
|
+
<a href="{{ link.url }}">{{ link.title }}</a>
|
100
|
+
{% endfor %}
|
101
|
+
{% if site.num_all_software > 0 %}
|
102
|
+
<a href="/software/">All {{ site.title }} software</a>
|
103
|
+
{% endif %}
|
104
|
+
{% if site.num_all_specs > 0 %}
|
105
|
+
<a href="/specs/">All specifications</a>
|
106
|
+
{% endif %}
|
107
|
+
</nav>
|
108
|
+
{% endif %}
|
109
|
+
|
110
|
+
{% if site.is_hub %}
|
111
|
+
<div class="site-logo" aria-label="logo">{% include logo.html %}</div>
|
112
|
+
{% else %}
|
113
|
+
<div class="parent-hub-plug">
|
114
|
+
<span class="label">{{ site.title }} is</span>
|
115
|
+
<a class="logo" role="presentation" href="{{ site.parent_hub.home_url }}"
|
116
|
+
aria-label="parent project logo">
|
117
|
+
{% include parent-hub/assets/symbol.svg %} <span class="title">{% include parent-hub/title.html %}</span>
|
118
|
+
</a>
|
119
|
+
</div>
|
120
|
+
{% endif %}
|
121
|
+
|
122
|
+
<div class="legal">{% include legal.html %}</div>
|
123
|
+
|
124
|
+
{% include social-links.html %}
|
125
|
+
</footer>
|
126
|
+
</div>
|
127
|
+
|
128
|
+
{% if site.algolia_search %}
|
129
|
+
<script src="https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js"></script>
|
130
|
+
|
131
|
+
{% comment %}
|
132
|
+
This would break a strict CSP, but Jekyll refuses to Liquid-process JS files
|
133
|
+
without also adding HTML wrapping. Eek.
|
134
|
+
TODO: Move this to data attributes on <body>.
|
135
|
+
{% endcomment %}
|
136
|
+
<script>
|
137
|
+
window.initAlgolia = function () {
|
138
|
+
if (window.docsearch) {
|
139
|
+
docsearch({
|
140
|
+
apiKey: '{{ site.algolia_search.api_key }}',
|
141
|
+
indexName: '{{ site.algolia_search.index_name }}',
|
142
|
+
inputSelector: 'input[type=search]',
|
143
|
+
debug: false,
|
144
|
+
});
|
145
|
+
}
|
146
|
+
};
|
147
|
+
</script>
|
148
|
+
{% endif %}
|
149
|
+
|
150
|
+
<script src="{{ "assets/js/clipboard.min.js" | relative_url }}"></script>
|
151
|
+
<script src="{{ "assets/listing-widget.js" | relative_url }}"></script>
|
152
|
+
<script src="{{ "assets/js/headroom.min.js" | relative_url }}"></script>
|
153
|
+
<script src="{{ "assets/js/opf.js" | relative_url }}"></script>
|
154
|
+
|
155
|
+
{% include scripts.html %}
|
156
|
+
</body>
|
@@ -0,0 +1,87 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
{% assign title = page.title | default: layout.title %}
|
6
|
+
{% assign prominent_title = page.article_header_title | default: layout.article_header_title %}
|
7
|
+
{% assign nav = page.navigation | default: layout.navigation %}
|
8
|
+
{% assign base_url = nav.base_url | default: page.base_url | default: layout.base_url | default: "" %}
|
9
|
+
{% assign num_top_nav_items = nav.items | size %}
|
10
|
+
|
11
|
+
<header class="documentation-header {% if num_top_nav_items > 0 %} has-nav {% endif %}">
|
12
|
+
<div class="nav-header">
|
13
|
+
<h3 class="title">
|
14
|
+
{% capture docs_nav_title %}
|
15
|
+
{{ layout.docs_title }}{% if selected_section %}: {{ selected_section.title }}{% endif %}
|
16
|
+
{% endcapture %}
|
17
|
+
|
18
|
+
{% if num_top_nav_items > 0 %}
|
19
|
+
<a href="javascript: void 0;">{{ docs_nav_title }}</a>
|
20
|
+
{% else %}
|
21
|
+
<span>{{ docs_nav_title }}</span>
|
22
|
+
{% endif %}
|
23
|
+
</h3>
|
24
|
+
|
25
|
+
{% if num_top_nav_items > 0 %}
|
26
|
+
<span class="nav-toggle-icon">
|
27
|
+
<i class="open fas fa-ellipsis-v"></i>
|
28
|
+
<i class="close fas fa-times"></i>
|
29
|
+
</span>
|
30
|
+
{% endif %}
|
31
|
+
</div>
|
32
|
+
</header>
|
33
|
+
|
34
|
+
|
35
|
+
<section class="documentation {% if num_top_nav_items > 0 %}has-nav{% endif %}">
|
36
|
+
<nav class="docs-nav">
|
37
|
+
<ul class="nav-items">
|
38
|
+
{% for item in nav.items %}
|
39
|
+
{% include _nav-item.html item=item base_url=base_url %}
|
40
|
+
{% endfor %}
|
41
|
+
</ul>
|
42
|
+
</nav>
|
43
|
+
|
44
|
+
<article>
|
45
|
+
<header>
|
46
|
+
<div class="title">
|
47
|
+
<h1 class="text">{{ prominent_title | default: title }}</h1>
|
48
|
+
</div>
|
49
|
+
|
50
|
+
{% if site.github_repo_url or num_top_nav_items > 0 %}
|
51
|
+
<nav role="toolbar">
|
52
|
+
{% if num_top_nav_items > 0 %}
|
53
|
+
<button class="docs-nav-toggle">Toggle table of contents</button>
|
54
|
+
{% endif %}
|
55
|
+
|
56
|
+
{% if site.github_repo_url %}
|
57
|
+
<a href="{{ site.github_repo_url }}/edit/{{ item_data.docs.github_repo_branch | default: site.default_repo_branch | default: 'main' }}/{{ page.path }}" class="docs-suggest-edits">Suggest edits to this page</a>
|
58
|
+
{% endif %}
|
59
|
+
</nav>
|
60
|
+
{% endif %}
|
61
|
+
|
62
|
+
<div>
|
63
|
+
<div class="lead">{{ page.description }}</div>
|
64
|
+
</div>
|
65
|
+
|
66
|
+
{% if selected_item.items %}
|
67
|
+
<nav class="subitems">
|
68
|
+
<h2>Further in this section</h2>
|
69
|
+
|
70
|
+
<ul>
|
71
|
+
{% for item in selected_item.items %}
|
72
|
+
{% include _nav-item.html item=item base_url=base_url %}
|
73
|
+
{% endfor %}
|
74
|
+
</ul>
|
75
|
+
</nav>
|
76
|
+
{% endif %}
|
77
|
+
</header>
|
78
|
+
|
79
|
+
<div class="body">
|
80
|
+
{{ content }}
|
81
|
+
</div>
|
82
|
+
|
83
|
+
</article>
|
84
|
+
</section>
|
85
|
+
|
86
|
+
<script src="{{ "/assets/js/anchor-scroll.js" | relative_url }}"></script>
|
87
|
+
<script src="{{ "/assets/js/adoc-toc.js" | relative_url }}"></script>
|
data/_layouts/home.html
ADDED
data/_layouts/page.html
ADDED
data/_layouts/post.html
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<article>
|
6
|
+
<header>
|
7
|
+
<h1 class="title">{{ page.title }}</h1>
|
8
|
+
|
9
|
+
<div class="meta">
|
10
|
+
{% include _post-meta.html post=page %}
|
11
|
+
</div>
|
12
|
+
</header>
|
13
|
+
|
14
|
+
{% assign num_social_links = page.author.social_links | size %}
|
15
|
+
{% if num_social_links > 0 %}
|
16
|
+
<aside class="social-links">
|
17
|
+
{% for link in page.author.social_links %}
|
18
|
+
<a href="{{ link }}" class="ico">
|
19
|
+
<span class="fa-layers fa-2x">
|
20
|
+
<i class="fas fa-circle"></i>
|
21
|
+
<i
|
22
|
+
{% if link contains "twitter.com" %}
|
23
|
+
class="fab fa-twitter"
|
24
|
+
alt="Twitter"
|
25
|
+
title="Twitter"
|
26
|
+
{% elsif link contains "github.com" %}
|
27
|
+
class="fab fa-github"
|
28
|
+
alt="Github"
|
29
|
+
title="Github"
|
30
|
+
{% elsif link contains "linkedin.com" %}
|
31
|
+
class="fab fa-linkedin-in"
|
32
|
+
alt="LinkedIn"
|
33
|
+
title="LinkedIn"
|
34
|
+
{% elsif link contains "facebook.com" %}
|
35
|
+
class="fab fa-facebook-f"
|
36
|
+
alt="Facebook"
|
37
|
+
title="Facebook"
|
38
|
+
{% elsif link contains "tumblr.com" %}
|
39
|
+
class="fab fa-tumblr"
|
40
|
+
alt="Tumblr"
|
41
|
+
title="Tumblr"
|
42
|
+
{% elsif link contains "instagram.com" %}
|
43
|
+
class="fab fa-instagram"
|
44
|
+
alt="Instagram"
|
45
|
+
title="Instagram"
|
46
|
+
{% endif %}
|
47
|
+
data-fa-transform="shrink-9"></i>
|
48
|
+
</span>
|
49
|
+
</a>
|
50
|
+
{% endfor %}
|
51
|
+
</aside>
|
52
|
+
{% endif %}
|
53
|
+
|
54
|
+
<div class="body">
|
55
|
+
{{ content }}
|
56
|
+
</div>
|
57
|
+
</article>
|
@@ -0,0 +1,9 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
html-class: docs-page
|
4
|
+
---
|
5
|
+
|
6
|
+
{% include item-doc-page.html items=site.software item_type='software' %}
|
7
|
+
|
8
|
+
<script src="{{ "/assets/js/anchor-scroll.js" | relative_url }}"></script>
|
9
|
+
<script src="{{ "/assets/js/adoc-toc.js" | relative_url }}"></script>
|