jekyll-theme-open-project 1.3.4 → 2.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: b4dcd33aba82235dfb9006a73ec08312b707d24b8aaf02004a48d9c8f9a39b60
4
- data.tar.gz: c0e916d4e6898e541b438619c974d1e70c1e884cb0a89cbdaea0328f6e97b9ed
2
+ SHA1:
3
+ metadata.gz: 221eba4af24be71eba3079f5413049ed6cbcd524
4
+ data.tar.gz: b487631fd4ccba5cf8aad76f9a22f95f6c0ec08d
5
5
  SHA512:
6
- metadata.gz: b0870bba7d5b1229926777e61c1d0016743981aef0710d8a524137847250a4debfa77cbcea5462df809ef19dba9dada90df9304f13d4d8ae701713247f6e7289
7
- data.tar.gz: 3cc202cc0740c816bb587f00b21a66738f925c13c14c8faecb8201780e10abd333e9e410e6610327b4536de8c16afb42ac55622bab90cb2cfed1a7c93c4d40d9
6
+ metadata.gz: 1a41113305d82bb450ff44367a7a66060a882977bd120b6b13ffa2bc55d1d80afcc1535bf969e7b30aeb984770be2aa8c0195c183de7f594ad585de8b82b3860
7
+ data.tar.gz: 0c59bf275fabdc82837deeeeee0405f4b7e13047270b7b2bd95492191088e42e6574a1d67f4c7df2d236b1cca9407dbea2e068a7d033fd55e40c578cfcb204cb
data/README.md CHANGED
@@ -119,7 +119,7 @@ These settings apply to both site types (hub and project).
119
119
 
120
120
  tagline: Site tagline
121
121
  pitch: Site pitch
122
- # The above two are used on home hero unit.
122
+ # The above two are used in home hero unit.
123
123
 
124
124
  social:
125
125
  links:
@@ -348,7 +348,6 @@ algolia_search:
348
348
  index_name: '<your Algolia index name>'
349
349
  # Only add this if you want to use Algolia’s search on your project site.
350
350
 
351
- # NOTE: Must match corresponding hub site’s configuration entry.
352
351
  tag_namespaces:
353
352
  software:
354
353
  namespace_id: "Human-readable namespace name"
@@ -356,6 +355,20 @@ tag_namespaces:
356
355
  # writtenin: "Written in"
357
356
  specs:
358
357
  namespace_id: "Human-readable namespace name"
358
+ # NOTE: Tag namespaces must match corresponding hub site’s configuration entry.
359
+
360
+ landing_priority: [custom_intro, blog, specs, software]
361
+ # Which order should sections be displayed on landing.
362
+ #
363
+ # Default order: [software, specs, blog]
364
+ # Depending on your project’s focus & pace of development you may want to change that.
365
+ # Supported sections: featured_posts, featured_software, featured_specs, custom_intro.
366
+ #
367
+ # If you use custom_intro, project site must define an include "custom-intro.html".
368
+ # The contents of that include will be wrapper in section.custom-intro tag.
369
+ # Inside the include you’d likely want to have introductory summary wrapped
370
+ # in section.summary, and possibly custom call-to-action buttons
371
+ # (see Metanorma.com site for an example).
359
372
  ```
360
373
 
361
374
  ### File structure
@@ -470,6 +483,7 @@ description: A sentence.
470
483
  # Not necessarily shown to the user,
471
484
  # but used for HTML metadata if jekyll-seo-tag is enabled
472
485
 
486
+ tags: [Ruby, Python, RFC, "<some_namespace_id>:<appropriate_tag>"]
473
487
  # Note: Avoid whitespaces and other characters that may make Jekyll
474
488
  # percent-encode the tag in URLs. Replace " " (a regular space)
475
489
  # with "_" (underline); underlines will be rewritten as spaces when tags
@@ -478,7 +492,23 @@ description: A sentence.
478
492
  # e.g. chosen programming language or target viewer audience
479
493
  # (see hub site configuration for tag namespace setup).
480
494
  # Avoid long namespace/tag combos as they can overflow item’s card widget.
481
- tags: [Ruby, Python, RFC, "<some_namespace_id>:<appropriate_tag>"]
495
+
496
+ external_links:
497
+ - url: https://github.com/riboseinc/asciidoctor-rfc
498
+ - url: https://docs.rs/proj/ver/…/
499
+ - { url: https://example.com/, title: "Custom title" }
500
+ # External links.
501
+ # For software, typically points to docs sites or source code repository.
502
+ # For specs, this usually contains RFC, IETF links, spec source code.
503
+ # * Link label can be specified with the title key.
504
+ # Select URLs are recognized and an appropriate label
505
+ # (possibly icon) is shown by default,
506
+ # otherwise you **should** specify the title.
507
+ # Currently, recognized URLs include
508
+ # GitHub, Docs.rs, RubyDoc,
509
+ # ietf.org/html/rfcN, datatracker.ietf.org/doc/…
510
+ # * Order links according to importance for project site visitors.
511
+ # The first link will be highlighted as primary.
482
512
 
483
513
  feature_with_priority: 1
484
514
  # With this key, software or spec will be featured on home
@@ -497,16 +527,14 @@ YAML frontmatter required for software:
497
527
  ```yaml
498
528
  repo_url: https://github.com/riboseinc/asciidoctor-rfc
499
529
  # Required.
530
+ # Used for things like showing how long ago
531
+ # the was project updated last.
500
532
 
501
- docs:
533
+ docs_source:
502
534
  git_repo_url: git@example.com:path/to-repo.git
503
535
  git_repo_subtree: docs
504
- # Docs that would be made part of open project site.
536
+ # Documentation, the contents of which will be made part of the project site.
505
537
  # See the nearby section about documentation.
506
-
507
- docs_url: https://docs.rs/proj/ver/…/
508
- # External docs. For some links
509
- # like docs.rs and rubydoc, special icon and/or label will be shown.
510
538
  ```
511
539
 
512
540
  #### Displaying software docs
@@ -519,12 +547,11 @@ only frontmatter, following this sample:
519
547
  ---
520
548
  items:
521
549
  - title: Introduction
550
+ path: intro/
522
551
  items:
523
- - { title: Overview, path: overview/ }
524
- - { title: Installation, path: installation/ }
525
- - title: Usage
526
- items:
527
- - { title: Basic, path: basic-usage/ }
552
+ - { title: Overview, path: intro/overview/ }
553
+ - { title: Installation, path: intro/installation/ }
554
+ - { title: Usage, path: usage/ }
528
555
  ---
529
556
 
530
557
  = Navigation
@@ -544,26 +571,13 @@ the navigation.
544
571
  YAML frontmatter specific to specs:
545
572
 
546
573
  ```yaml
547
- rfc_id: XXXX
548
- # IETF RFC URL would be in the form
549
- # http://ietf.org/html/rfc<id>
550
-
551
- ietf_datatracker_id: some-string-identifier-here
552
- ietf_datatracker_ver: "01"
553
- # IETF datatracker URL would be in the form
554
- # https://datatracker.ietf.org/doc/<id>[-<version>]
555
-
556
- source_url: https://example.com/spec-source-markup
557
- # Required.
558
-
559
-
560
- # For displaying spec contents, see below:
561
-
562
574
  spec_source:
563
575
  git_repo_url: https://github.com/<user>/<repo>
564
576
  git_repo_subtree: images
565
577
  build:
566
578
  engine: png_diagrams
579
+ # See below about building the spec from its source
580
+ # to be displayed on the site.
567
581
 
568
582
  navigation:
569
583
  sections:
@@ -727,33 +741,36 @@ The rule would look like this:
727
741
 
728
742
  ### SASS variables
729
743
 
730
- Following are the variables along with their defaults:
744
+ Following are principal variables that define the appearance of a site
745
+ built with this theme, along with their defaults.
746
+
747
+ For a project site, wisely choosing primary and accent colors should be enough
748
+ as a minimum.
731
749
 
732
750
  ```scss
733
751
  $font-family: Helvetica, Arial, sans-serif !default;
752
+ $main-font-color: black !default;
734
753
 
735
- # Primary color—should be bright but dark enough to be readable,
736
- # since some text elements are set using this color:
754
+ # Primary color & accent colors are used throughout site’s UI.
755
+ # Make sure to use shades dark enough that white text is readable on top,
756
+ # especially with the primary color.
757
+ # Make sure these colors go well with each other.
737
758
  $primary-color: lightblue !default;
759
+ $accent-color: red !default;
738
760
 
739
- # Darker variation of primary color used for background on elements where
740
- # text is set in white:
741
- $primary-dark-color: navy !default;
761
+ # These colors are used for warning/info blocks within body text.
762
+ $important-color: orange !default;
763
+ $warning-color: red !default;
742
764
 
743
- # Bright color for accent elements, such as buttons (not yet in use).
744
- # Text on those elements is set in bold and white, so this color
745
- # should be dark enough:
746
- $accent-color: red !default;
765
+ # Background used on home page body & other pages’ hero unit backgrounds.
766
+ $main-background: linear-gradient(315deg, $accent-color 0%, $primary-color 74%) !default;
747
767
 
748
- # Below are used for `background` CSS rule for top header, and for
749
- # hero unit respectively. Gradients can be supplied.
750
- $header-background: $primary-dark-color !default;
751
- $hero-background: $primary-dark-color !default;
768
+ # This background defaults to $main-background value.
769
+ $header-background: $main-background !default;
752
770
 
753
- # This is for the big big hero unit on home page.
754
- $superhero-background: $primary-dark-color !default;
755
771
 
756
- # Below customize colors for different sections of the site.
772
+ # Below does not apply to project sites (only the hub site):
773
+
757
774
  $hub-software--primary-color: lightsalmon !default;
758
775
  $hub-software--primary-dark-color: tomato !default;
759
776
  $hub-software--hero-background: $hub-software--primary-dark-color !default;
@@ -763,6 +780,10 @@ $hub-specs--primary-dark-color: palevioletred !default;
763
780
  $hub-specs--hero-background: $hub-specs--primary-dark-color !default;
764
781
  ```
765
782
 
783
+ TIP: A good way to find a good match for primary-color and accent-color
784
+ may be the eggradients.com website. Find a suitable, dark enough gradient and pick
785
+ one color as primary, and the other as accent.
786
+
766
787
 
767
788
  ## Extra .gitignore rules
768
789
 
data/_config.yml CHANGED
@@ -17,6 +17,14 @@ exclude:
17
17
  - /_projects/**/docs/*
18
18
  - .sass-cache/
19
19
 
20
+ unmarked_external_link_selectors:
21
+ - .layout--home a
22
+ - a[href*=travis]
23
+ - a[href*=coverity]
24
+ - a[href*=codecov]
25
+
26
+ landing_priority: [software, specs, blog]
27
+
20
28
  collections:
21
29
  projects:
22
30
  output: false
@@ -12,7 +12,7 @@
12
12
  {% comment %} Otherwise in Liquid selected value falls through to next include instance {% endcomment %}
13
13
  {% endif %}
14
14
 
15
- <li class="item {% if selected %}selected{% endif %}">
15
+ <li class="{% if selected %}selected{% endif %}">
16
16
  <div class="item-title"
17
17
  title="{{ include.item.title }}{% if include.item.description %} ({{ include.item.description }}){% endif %}">
18
18
  {% if include.item.path == null or selected == true %}
@@ -26,11 +26,13 @@
26
26
  {% endif %}
27
27
  </div>
28
28
 
29
- {% if include.item.items %}
30
- <ul class="nav-items subitmes">
31
- {% for item in include.item.items %}
32
- {% include _nav-item.html item=item base_url=include.base_url selected_item=include.selected_item %}
33
- {% endfor %}
34
- </ul>
29
+ {% if include.top_level_only != true %}
30
+ {% if include.item.items %}
31
+ <ul class="nav-items subitmes">
32
+ {% for item in include.item.items %}
33
+ {% include _nav-item.html item=item base_url=include.base_url selected_item=include.selected_item %}
34
+ {% endfor %}
35
+ </ul>
36
+ {% endif %}
35
37
  {% endif %}
36
38
  </li>
@@ -0,0 +1,59 @@
1
+ <a href="{{ include.url }}">
2
+
3
+ {% if include.url contains "github.com" %}
4
+ <span class="ico">
5
+ <i class="fab fa-github"></i>
6
+ </span>
7
+ <span class="lbl">
8
+ {{ include.title | default: "GitHub" }}
9
+ </span>
10
+
11
+ {% elsif include.url contains "rubygems.org" %}
12
+ <span class="ico">
13
+ <i class="far fa-gem"></i>
14
+ </span>
15
+ <span class="lbl">
16
+ {{ include.title | default: "Gem" }}
17
+ </span>
18
+
19
+ {% elsif include.url contains "crates.io/crates" %}
20
+ <span class="ico">
21
+ <i class="far fa-cubes"></i>
22
+ </span>
23
+ <span class="lbl">
24
+ {{ include.title | default: "Crate" }}
25
+ </span>
26
+
27
+ {% elsif include.url contains "rubydoc" %}
28
+ <span class="ico">
29
+ <i class="far fa-gem"></i>
30
+ </span>
31
+ <span class="lbl">
32
+ {{ include.title | default: "RubyDoc" }}
33
+ </span>
34
+
35
+ {% elsif include.url contains "docs.rs" %}
36
+ <span class="ico">
37
+ <i class="far fa-book"></i>
38
+ </span>
39
+ <span class="lbl">
40
+ {{ include.title | default: "Docs.rs" }}
41
+ </span>
42
+
43
+ {% elsif include.url contains "ietf.org/html/rfc" %}
44
+ <span class="lbl">
45
+ {{ include.title | default: "IETF RFC" }}
46
+ </span>
47
+
48
+ {% elsif include.url contains "datatracker.ietf.org" %}
49
+ <span class="lbl">
50
+ {{ include.title | default: "IETF document" }}
51
+ </span>
52
+
53
+ {% else %}
54
+ <span class="lbl">
55
+ {{ include.title }}
56
+ </span>
57
+
58
+ {% endif %}
59
+ </a>
@@ -0,0 +1,11 @@
1
+ {% assign posts = site.posts_combined %}
2
+
3
+ <section class="featured-posts">
4
+ <h2 class="title">From the <a href="/blog/">Blog</a></h2>
5
+
6
+ <div class="items">
7
+ {% for item in posts | limit: site.max_featured_posts %}
8
+ {% include post-card.html post=item %}
9
+ {% endfor %}
10
+ </div>
11
+ </section>
@@ -0,0 +1,55 @@
1
+ <section class="software">
2
+ {% unless site.one_software %}
3
+ <h2 class="title">
4
+ Software
5
+ {% if site.num_all_software > site.num_featured_software %}
6
+ — <a href="/software/">see all</a>
7
+ {% endif %}
8
+ </h2>
9
+ {% endunless %}
10
+
11
+ <div class="items">
12
+ {% assign software = site.featured_software %}
13
+ {% for item in software | limit: site.max_featured_software %}
14
+ {% assign url = item.url %}
15
+ {% assign item_docs = site.software | where_exp: "item", "item.url contains url" %}
16
+ {% assign item_data = site.software | where_exp: "item", "item.url == url" | first %}
17
+ {% assign nav = item_docs | where_exp: "item", "item.path contains 'docs/navigation'" | first %}
18
+
19
+ <div class="item" role="article">
20
+ {% unless site.one_software %}
21
+ <header>
22
+ <div class="logo-container">
23
+ {% include software-symbol.html item_id=item.id %}
24
+ </div>
25
+
26
+ <h3 class="title"><a href="{{ item.url }}">{{ item.title }}</a></h3>
27
+ </header>
28
+
29
+ <p class="body">
30
+ {{ item.description }}
31
+ </p>
32
+ {% endunless %}
33
+
34
+ {% assign top_level_nav_item_with_path = nav.items | where_exp: "item", "item.path" | first %}
35
+ {% if nav and top_level_nav_item_with_path %}
36
+ <div class="docs-nav">
37
+ {% assign docs_base_url = item.url | append: "docs/" %}
38
+ {% assign nav_items = nav.items | slice: 0, 3 %}
39
+ <ul class="nav-items">
40
+ {% for nav_item in nav_items %}
41
+ {% include _nav-item.html item=nav_item base_url=docs_base_url top_level_only=true %}
42
+ {% endfor %}
43
+ </ul>
44
+ </div>
45
+ {% endif %}
46
+
47
+ <div class="external-links">
48
+ <ul class="nav-items">
49
+ {% include item-external-links.html item_data=item_data %}
50
+ </ul>
51
+ </div>
52
+ </div>
53
+ {% endfor %}
54
+ </div>
55
+ </section>
@@ -0,0 +1,31 @@
1
+ <section class="specs">
2
+ <h2 class="title">
3
+ Specification{% if site.num_all_specs > 1 %}s{% endif %}
4
+ {% if site.num_all_specs > site.num_featured_specs %}
5
+ — <a href="/specs/">see all</a>
6
+ {% endif %}
7
+ </h2>
8
+ <div class="items">
9
+ {% assign specs = site.featured_specs %}
10
+ {% for item in specs | limit: site.max_featured_specs %}
11
+ {% assign url = item.url %}
12
+ {% assign item_data = site.specs | where_exp: "item", "item.url == url" | first %}
13
+
14
+ <div class="item" role="article">
15
+ <header>
16
+ <h3 class="title"><a href="{{ item.url }}">{{ item.title }}</a></h3>
17
+ </header>
18
+
19
+ <p class="body">
20
+ {{ item.description }}
21
+ </p>
22
+
23
+ <div class="external-links">
24
+ <ul class="nav-items">
25
+ {% include item-external-links.html item_data=item_data %}
26
+ </ul>
27
+ </div>
28
+ </div>
29
+ {% endfor %}
30
+ </div>
31
+ </section>
@@ -1,14 +1,20 @@
1
1
  <div class="text">
2
2
  <h1 class="title">{{ site.tagline }}</h1>
3
- <p class="desc">{{ site.pitch | safe }}</p>
4
3
 
5
- <div class="cta">
6
- {% if site.is_hub %}
4
+ {% if site.pitch %}
5
+ <p class="desc">{{ site.pitch | safe }}</p>
6
+ {% endif %}
7
+
8
+ {% if site.is_hub %}
9
+ <div class="cta">
7
10
  <a class="button" href="{{ "/projects/" | relative_url }}">
8
11
  <i class="icon far fa-search"></i>
9
12
  Explore Projects
10
13
  </a>
11
- {% else if %}
14
+ </div>
15
+ {% else if site.one_software %}
16
+ {% else %}
17
+ <div class="cta">
12
18
  {% assign ctas = site.home_calls_to_action | slice: 0, 2 %}
13
19
 
14
20
  {% for link in ctas %}
@@ -16,11 +22,6 @@
16
22
  {{ link.title }}
17
23
  </a>
18
24
  {% endfor %}
19
- {% endif %}
20
- </div>
21
- </div>
22
- <div class="illustration">
23
- <div role="presentation" class="logo">
24
- {% include assets/symbol.svg %}
25
- </div>
25
+ </div>
26
+ {% endif %}
26
27
  </div>