jekyll-theme-open-project 1.3.4 → 2.0

Sign up to get free protection for your applications and to get access to all the features.
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>