j1-template 2023.5.2 → 2023.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +11 -9
- data/_includes/themes/j1/layouts/content_generator_post.html +8 -6
- data/_includes/themes/j1/procedures/global/create_word_cloud.proc +1 -1
- data/_includes/themes/j1/procedures/layouts/module_writer.proc +1 -1
- data/_includes/themes/j1/procedures/posts/collate_timeline.proc +4 -4
- data/_includes/themes/j1/procedures/posts/pager.proc +1 -1
- data/_layouts/_home.html +88 -0
- data/_layouts/home.html +1 -1
- data/assets/data/banner.html +7 -7
- data/assets/data/panel.html +37 -25
- data/assets/data/quicklinks.html +40 -30
- data/assets/data/speak2me.html +219 -0
- data/assets/data/translator.html +32 -4
- data/assets/themes/j1/adapter/js/speak2me.js +425 -0
- data/assets/themes/j1/adapter/js/translator.js +10 -2
- data/assets/themes/j1/core/css/icon-fonts/mdib.css +21 -0
- data/assets/themes/j1/core/css/icon-fonts/mdib.min.css +1 -1
- data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +34 -40
- data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +2 -2
- data/assets/themes/j1/core/css/themes/unodark/bootstrap.css +77 -57
- data/assets/themes/j1/core/css/themes/unodark/bootstrap.min.css +2 -2
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +176 -42
- data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +3 -3
- data/assets/themes/j1/core/js/template.js +1658 -0
- data/assets/themes/j1/core/js/template.min.js +11 -5
- data/assets/themes/j1/core/js/template.min.js.map +1 -1
- data/assets/themes/j1/modules/speak2me/LICENSE +21 -0
- data/assets/themes/j1/modules/speak2me/js/speak2me.js +947 -0
- data/assets/themes/j1/modules/speak2me/js/speak2me.min.js +26 -0
- data/assets/themes/j1/modules/translator/js/translator.js +30 -13
- data/assets/themes/j1/modules/translator/js/translator.min.js +1 -1
- data/lib/j1/version.rb +1 -1
- data/lib/starter_web/Gemfile +5 -5
- data/lib/starter_web/README.md +5 -5
- data/lib/starter_web/_config.yml +12 -44
- data/lib/starter_web/_data/blocks/banner.yml +7 -6
- data/lib/starter_web/_data/blocks/panel.yml +37 -39
- data/lib/starter_web/_data/layouts/home.yml +1 -1
- data/lib/starter_web/_data/modules/advertising.yml +10 -88
- data/lib/starter_web/_data/modules/buymeacoffee.yml +30 -0
- data/lib/starter_web/_data/modules/defaults/advertising.yml +3 -1
- data/lib/starter_web/_data/modules/defaults/blog_navigator.yml +97 -164
- data/lib/starter_web/_data/modules/defaults/buymeacoffee.yml +30 -0
- data/lib/starter_web/_data/modules/defaults/navigator.yml +8 -4
- data/lib/starter_web/_data/modules/defaults/speak2me.yml +72 -0
- data/lib/starter_web/_data/modules/scroller.yml +1 -1
- data/lib/starter_web/_data/modules/speak2me.yml +33 -0
- data/lib/starter_web/_data/resources.yml +24 -1
- data/lib/starter_web/_data/templates/feed.xml +1 -1
- data/lib/starter_web/_includes/google/static/{google_ad_5128488466.html → google_ad__your-slot-id.html} +1 -1
- data/lib/starter_web/_plugins/asciidoctor/callout.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/carousel-block.rb +2 -2
- data/lib/starter_web/_plugins/asciidoctor/gallery-block.rb +2 -2
- data/lib/starter_web/_plugins/asciidoctor/gist-block.rb +2 -2
- data/lib/starter_web/_plugins/asciidoctor/google-ad-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/lightbox-block.rb +2 -7
- data/lib/starter_web/_plugins/asciidoctor/masonry-block.rb +2 -3
- data/lib/starter_web/_plugins/asciidoctor/masterslider-block.rb +2 -2
- data/lib/starter_web/_plugins/asciidoctor/mdib-icon-inline.rb +43 -0
- data/lib/starter_web/_plugins/asciidoctor/mdil-icon-inline.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/range-slider-block.rb +1 -1
- data/lib/starter_web/_plugins/asciidoctor/slick-block.rb +2 -2
- data/lib/starter_web/_plugins/asciidoctor/textbook-block.rb +1 -1
- data/lib/starter_web/_plugins/filter/liquify.rb +22 -22
- data/lib/starter_web/_plugins/index/lunr.rb +1 -1
- data/lib/starter_web/assets/images/collections/books/biography/a_life_in_questions.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/biography/becoming.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/biography/born_to_run.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/biography/forty_autumns.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/biography/not_dead_yet.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/biography/the_princess_diarist.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/biography/when_breath_becomes_air.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/fantasy/harry-potter-deathly-hallows.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/fantasy/harry-potter-philosophers-stone.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/fantasy/mistborn-trilogy.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/fantasy/ready-player-one.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/fantasy/sword-of-destiny.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/fantasy/terry-pratchet-diary.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/romance/breath-of-snow-and-ashes.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/romance/it-ends-with-us.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/romance/outlander-novel.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/romance/outlander-short-story.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/romance/the-fiery-cross.jpg +0 -0
- data/lib/starter_web/assets/images/collections/books/romance/the_dressmaker.jpg +0 -0
- data/lib/starter_web/collections/_biography/a-life-in-questions.adoc +13 -8
- data/lib/starter_web/collections/_biography/becoming.adoc +18 -12
- data/lib/starter_web/collections/_biography/born-to-run.adoc +17 -13
- data/lib/starter_web/collections/_biography/forty-autumns.adoc +14 -9
- data/lib/starter_web/collections/_biography/not-dead-yet.adoc +12 -7
- data/lib/starter_web/collections/_biography/princess-diarist-the.adoc +13 -8
- data/lib/starter_web/collections/_biography/when-breath-becomes-air.adoc +14 -9
- data/lib/starter_web/collections/_fantasy/harry-potter-deathly-hallows.adoc +13 -7
- data/lib/starter_web/collections/_fantasy/harry-potter-philosophers-stone.adoc +12 -8
- data/lib/starter_web/collections/_fantasy/mistborn-trilogy.adoc +14 -10
- data/lib/starter_web/collections/_fantasy/ready-player-one.adoc +12 -11
- data/lib/starter_web/collections/_fantasy/sword-of-destiny.adoc +15 -7
- data/lib/starter_web/collections/_fantasy/terry-pratchet-diary.adoc +11 -6
- data/lib/starter_web/collections/_romance/breath-of-snow-and-ashes.adoc +15 -10
- data/lib/starter_web/collections/_romance/it-ends-with-us.adoc +11 -6
- data/lib/starter_web/collections/_romance/outlander-novel.adoc +11 -6
- data/lib/starter_web/collections/_romance/{virgins-outlander-short-story.adoc → outlander-virgins-short-story.adoc} +11 -6
- data/lib/starter_web/collections/_romance/{dressmaker-the.adoc → the-dressmaker.adoc} +11 -6
- data/lib/starter_web/collections/_romance/{fiery-cross-the.adoc → the-fiery-cross.adoc} +11 -6
- data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +6 -6
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +12 -11
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-static-site-generators.adoc +9 -7
- data/lib/starter_web/collections/posts/public/featured/_posts/2022-02-01-about-j1.adoc +8 -8
- data/lib/starter_web/dot.ruby-version +1 -1
- data/lib/starter_web/index.html +10 -8
- data/lib/starter_web/package.json +1 -1
- data/lib/starter_web/pages/public/about/features.adoc +7 -1
- data/lib/starter_web/pages/public/about/reporting_issues.adoc +2 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/000_intro.adoc +2 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/100_converter.adoc +2 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/200_themes.adoc +2 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/_includes/documents/000_intro.asciidoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/_includes/documents/100_converter/112_getting_started.asciidoc +1 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/_includes/documents/100_converter/113_themes.asciidoc +1 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +2 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/_includes/documents/100_chapter.asciidoc +3 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/_includes/documents/200_chapter.asciidoc +1 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +2 -0
- data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +6 -0
- data/lib/starter_web/pages/public/blog/navigator/archive/allview.html +6 -13
- data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +17 -11
- data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +7 -8
- data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +5 -7
- data/lib/starter_web/pages/public/blog/navigator/index.html +15 -14
- data/lib/starter_web/pages/public/features/general.adoc +7 -1
- data/lib/starter_web/pages/public/features/template.adoc +87 -128
- data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_all_books.adoc +10 -2
- data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_biography.adoc +8 -3
- data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_fantasy.adoc +11 -4
- data/lib/starter_web/pages/public/learn/bookshelf/article_previewer/viewer_romance.adoc +11 -5
- data/lib/starter_web/pages/public/learn/bookshelf/jekyll_collections.adoc +24 -14
- data/lib/starter_web/pages/public/learn/bs_sass_variables/bs_sass_variables.adoc +4 -0
- data/lib/starter_web/pages/public/learn/core_web_vitals/core_web_vitals.adoc +8 -4
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/100_gistblock.asciidoc +2 -1
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/themes_bootstrap.asciidoc +27 -28
- data/lib/starter_web/pages/public/learn/roundtrip/asciidoc_extensions.adoc +169 -155
- data/lib/starter_web/pages/public/learn/roundtrip/bootstrap_themes.adoc +28 -19
- data/lib/starter_web/pages/public/learn/roundtrip/highlghter_rouge.adoc +9 -5
- data/lib/starter_web/pages/public/learn/roundtrip/icon_fonts.adoc +67 -77
- data/lib/starter_web/pages/public/learn/roundtrip/lunr_search.1.asciidoc +460 -0
- data/lib/starter_web/pages/public/learn/roundtrip/lunr_search.adoc +12 -7
- data/lib/starter_web/pages/public/learn/roundtrip/modal_extentions.adoc +26 -19
- data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +470 -447
- data/lib/starter_web/pages/public/learn/roundtrip/present_videos.adoc +60 -59
- data/lib/starter_web/pages/public/learn/roundtrip/responsive_tables.adoc +51 -38
- data/lib/starter_web/pages/public/learn/roundtrip/typography.adoc +31 -25
- data/lib/starter_web/pages/public/learn/where_to_go.adoc +9 -4
- data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +4 -0
- data/lib/starter_web/pages/public/legal/en/200_impress.adoc +2 -0
- data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +22 -3
- data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +5 -0
- data/lib/starter_web/pages/public/manuals/speak2me.adoc +412 -0
- data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +27 -19
- data/lib/starter_web/pages/public/plans/plans.adoc +3 -0
- data/lib/starter_web/pages/public/tools/cheatsheet/gem.adoc +2 -0
- data/lib/starter_web/pages/public/tools/cheatsheet/git.adoc +2 -0
- data/lib/starter_web/pages/public/tools/cheatsheet/j1.adoc +2 -0
- data/lib/starter_web/pages/public/tools/cheatsheet/yaml.adoc +6 -0
- data/lib/starter_web/pages/public/tools/previewer/preview_bootstrap_theme.adoc +17 -3
- data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
- data/lib/starter_web/utilsrv/package.json +1 -1
- metadata +38 -7
- data/lib/starter_web/_includes/google/static/google_ad_7284712660.html +0 -19
@@ -1,8 +1,10 @@
|
|
1
1
|
---
|
2
2
|
title: Features
|
3
3
|
tagline: Modules, Extensions and Integrations
|
4
|
+
|
4
5
|
date: 2021-01-01
|
5
6
|
#last_modified: 2023-01-01
|
7
|
+
|
6
8
|
description: >
|
7
9
|
J1 Template is a Bootstrap V5 website template for the static
|
8
10
|
site generator Jekyll.
|
@@ -36,8 +38,6 @@ resources: [
|
|
36
38
|
video_js, vimeo_player, vimeo_froogaloop
|
37
39
|
]
|
38
40
|
resource_options:
|
39
|
-
- toccer:
|
40
|
-
collapseDepth: 3
|
41
41
|
- attic:
|
42
42
|
slides:
|
43
43
|
- url: /assets/images/modules/attics/christina-1920x1280.jpg
|
@@ -80,6 +80,7 @@ J1 is different: easy to use, no programming is needed.
|
|
80
80
|
|
81
81
|
// Include sub-documents (if any)
|
82
82
|
// -----------------------------------------------------------------------------
|
83
|
+
[role="mt-5"]
|
83
84
|
== Modules
|
84
85
|
|
85
86
|
The Template provides a large number of building blocks to create modern
|
@@ -89,8 +90,10 @@ development or web design from the beginning.
|
|
89
90
|
|
90
91
|
mdi:mouse-move-down[24px, md-blue ml-3 mr-2]
|
91
92
|
<<Infinite scroll>> +
|
93
|
+
mdi:speaker[24px, md-blue ml-3 mr-2]
|
94
|
+
<<Screen reader>> +
|
92
95
|
mdi:mouse-move-down[24px, md-blue ml-3 mr-2]
|
93
|
-
<<Animate on
|
96
|
+
<<Animate on Scroll>> +
|
94
97
|
mdi:animation[24px, md-blue ml-3 mr-2]
|
95
98
|
<<Floating Action Buttons>> +
|
96
99
|
mdi:magnify[24px, md-blue ml-3 mr-2]
|
@@ -116,6 +119,7 @@ mdi:gesture-swipe[24px, md-blue ml-3 mr-2]
|
|
116
119
|
mdi:folder-multiple-image[24px, md-blue ml-3 mr-2]
|
117
120
|
<<Image and Video Galleries>>
|
118
121
|
|
122
|
+
[role="mt-5"]
|
119
123
|
=== Infinite scroll
|
120
124
|
|
121
125
|
Infinite scrolling (IS), or known as endless scrolling, is a technique that
|
@@ -126,7 +130,19 @@ additional pages.
|
|
126
130
|
J1 Template supports infinite scrolling and is used, for example, for loading
|
127
131
|
previews of blog articles.
|
128
132
|
|
129
|
-
|
133
|
+
[role="mt-5"]
|
134
|
+
=== Screen reader
|
135
|
+
|
136
|
+
Speak2Me for J1 Template is a speech synthesise (TTS) module that enables a
|
137
|
+
so-called screen reader. The reader functionality allows users to sit back
|
138
|
+
and listen to the browser read aloud the important contents on a Web page.
|
139
|
+
|
140
|
+
The *screen reader* on websites created by J1 Template is started by
|
141
|
+
clicking on the *speaker* symbol mdi:speaker[24px, md-blue] placed top
|
142
|
+
right in the *menu bar*.
|
143
|
+
|
144
|
+
[role="mt-5"]
|
145
|
+
=== Animate on Scroll
|
130
146
|
|
131
147
|
Scroll-triggered animation (AOS) is an effective way to animate website
|
132
148
|
elements such as text, graphics, photos, and video, bringing them to life
|
@@ -134,6 +150,7 @@ as users scroll down a page. Scroll animations are more likely to grab the
|
|
134
150
|
user's attention, making websites look and feel more dynamic and
|
135
151
|
interesting.
|
136
152
|
|
153
|
+
[role="mt-5"]
|
137
154
|
=== Floating Action Buttons
|
138
155
|
|
139
156
|
The *Floating Action Button* (FAB) is an element of Google's Material Design.
|
@@ -148,6 +165,7 @@ The template system supports Floating Action Buttons for in-page navigation.
|
|
148
165
|
When the FAB is pressed, it provides more related actions like showing the
|
149
166
|
content table or scrolling a page chapter-wise up and down.
|
150
167
|
|
168
|
+
[role="mt-5"]
|
151
169
|
=== Full-text search engine
|
152
170
|
|
153
171
|
Full-text search (FTS) for a website is an advanced method of searching
|
@@ -162,6 +180,7 @@ to be small but full-featured. Lunr enables developers to provide visitors
|
|
162
180
|
with a great search experience without the need for external, server-sided
|
163
181
|
search services like Google on the internet.
|
164
182
|
|
183
|
+
[role="mt-5"]
|
165
184
|
=== Cookie Consent
|
166
185
|
|
167
186
|
Running websites in the EU and many other countries, implementing the
|
@@ -182,6 +201,7 @@ accepting the use of cookies.
|
|
182
201
|
The Template system provides a configurable GDPR compliant module to manage
|
183
202
|
the consent of your visitors on cookies.
|
184
203
|
|
204
|
+
[role="mt-5"]
|
185
205
|
=== Translator
|
186
206
|
|
187
207
|
A Website translation service is useful in a wide range of situations.
|
@@ -231,10 +251,11 @@ visitors do not agree on cookies required to use Google Translate, GT gets
|
|
231
251
|
automatically disabled, and all cookies from Google are deleted from the
|
232
252
|
user's system.
|
233
253
|
|
254
|
+
[role="mt-5"]
|
234
255
|
=== Master Header
|
235
256
|
|
236
257
|
The most-top position of a web page is important; this postion is presented to
|
237
|
-
your vistors very first. The Master Header (Attic) give your reader a
|
258
|
+
your vistors very first. The Master Header (Attic) give your reader a first
|
238
259
|
impression of what is presented on a page.
|
239
260
|
|
240
261
|
Attics may contains (dynamic) *Text*, *Images* or *Videos* to support a page
|
@@ -243,12 +264,13 @@ for the content presented.
|
|
243
264
|
.Master Header (image-based)
|
244
265
|
lightbox::images--master-header[ 800, {data-images--master-header} ]
|
245
266
|
|
267
|
+
[role="mt-5"]
|
246
268
|
=== Clipboard
|
247
269
|
|
248
270
|
The clipboard is a special function of the operating system of desktop or
|
249
271
|
mobile computers that temporarily stores copied text or other data in memory.
|
250
|
-
Once something is stored in the clipboard, comments, the user can paste the
|
251
|
-
new location.
|
272
|
+
Once something is stored in the clipboard, comments, the user can paste the
|
273
|
+
data to a new location.
|
252
274
|
|
253
275
|
TIP: Click on the *COPY* button (top-right) in the following source code
|
254
276
|
section.
|
@@ -276,6 +298,7 @@ J1 integrates the clipboard functionality of your computer system to copy and
|
|
276
298
|
paste examples or code elements from a webpage. A clipboard will help your
|
277
299
|
users a lot to manage the code snippets you’ve provided.
|
278
300
|
|
301
|
+
[role="mt-5"]
|
279
302
|
=== Smooth Scroll
|
280
303
|
|
281
304
|
Smooth scrolling (SSR) is an enhanced feature of J1 designed to improve
|
@@ -283,6 +306,7 @@ scrolling and positioning on anchor links. If SSR is enabled, an animated
|
|
283
306
|
transition is done for scrolling to headlines (anchor links) and gets
|
284
307
|
exactly positioned.
|
285
308
|
|
309
|
+
[role="mt-5"]
|
286
310
|
=== Enhanced Navigation
|
287
311
|
|
288
312
|
When it comes to the usability of a website, your visitors' focus is on one
|
@@ -325,6 +349,7 @@ All features are available by configuration, and no programming is needed.
|
|
325
349
|
icon: format-color-fill
|
326
350
|
----
|
327
351
|
|
352
|
+
[role="mt-5"]
|
328
353
|
=== Lightboxes
|
329
354
|
|
330
355
|
A Lightbox is, in general, a helper which displays enlarged, almost
|
@@ -360,6 +385,7 @@ gallery::jg_old_times[ role="mb-4 wm-800" ]
|
|
360
385
|
.LightGallery
|
361
386
|
gallery::jg_old_times[ role="mb-4 wm-800" ]
|
362
387
|
|
388
|
+
[role="mt-5"]
|
363
389
|
=== Text and Image Carousels
|
364
390
|
|
365
391
|
J1 Carousel is based on OWL Carousel, a clean and neat jQuery slider plugin
|
@@ -403,7 +429,7 @@ carousel::demo_text_carousel_parallax[role="mb-3"]
|
|
403
429
|
.Parallax text carousel
|
404
430
|
carousel::demo_text_carousel_parallax[role="mb-3"]
|
405
431
|
|
406
|
-
|
432
|
+
[role="mt-5"]
|
407
433
|
=== Text and Image Sliders
|
408
434
|
|
409
435
|
Master Slider is a premium image and content slider for any purposes, with
|
@@ -417,6 +443,7 @@ masterslider::ms_00006[role="mt-4 mb-5"]
|
|
417
443
|
|
418
444
|
masterslider::ms_00009[role="mt-4 mb-5"]
|
419
445
|
|
446
|
+
[role="mt-5"]
|
420
447
|
=== Image and Video Galleries
|
421
448
|
|
422
449
|
Image and Video Galleries allow you to lay out groups of images or videos
|
@@ -449,6 +476,7 @@ gallery::jg_video_html5[role="mb-5"]
|
|
449
476
|
.Video Gallery (HTML5)
|
450
477
|
gallery::jg_video_html5[role="mb-5"]
|
451
478
|
|
479
|
+
[role="mt-5"]
|
452
480
|
== Extensions
|
453
481
|
|
454
482
|
Frameworks like _Bootstrap_ and Asciidoc are enormously flexible and customizable.
|
@@ -456,21 +484,20 @@ Changing or adding components to frameworks requires a lot of experience. That
|
|
456
484
|
is not the idea of J1. Customizations for the base frameworks are prepared,
|
457
485
|
simple to use, and usable out-of-the-box.
|
458
486
|
|
459
|
-
Make your site unique.
|
460
|
-
|
461
487
|
mdi:bootstrap[24px, md-blue ml-3 mr-2]
|
462
488
|
<<Bootstrap extensions>> +
|
463
|
-
mdi:format-annotation-plus[24px, md-blue ml-3 mr-2]
|
464
|
-
<<Asciidoctor extensions>> +
|
465
489
|
mdi:group[24px, md-blue ml-3 mr-2]
|
466
|
-
<<Banners and Panels>> +
|
467
|
-
mdi:near-me[24px, md-blue ml-3 mr-2]
|
468
490
|
<<Blog Post Navigation>> +
|
491
|
+
mdi:format-annotation-plus[24px, md-blue ml-3 mr-2]
|
492
|
+
<<Block elements>> +
|
493
|
+
mdi:near-me[24px, md-blue ml-3 mr-2]
|
494
|
+
<<Asciidoctor extensions>> +
|
469
495
|
mdi:content-duplicate[24px, md-blue ml-3 mr-2]
|
470
|
-
Featured
|
496
|
+
<<Featured example content>> +
|
471
497
|
mdi:image[24px, md-blue ml-3 mr-2]
|
472
|
-
Royalty Free Images
|
498
|
+
<<Royalty Free Images>>
|
473
499
|
|
500
|
+
[role="mt-5"]
|
474
501
|
=== Bootstrap extensions
|
475
502
|
|
476
503
|
A set of Advanced Bootstrap Modals (ABM), based on the free package of Material
|
@@ -506,6 +533,31 @@ Post's front matter by specifying a new date/time in the format
|
|
506
533
|
`2008-12-14 10:30:00 +0900`).
|
507
534
|
|===
|
508
535
|
|
536
|
+
[role="mt-5"]
|
537
|
+
=== Blog Post Navigation
|
538
|
+
|
539
|
+
To make your Blog Articles available to your vistors, J1 offers an easy to use
|
540
|
+
navigation module for all your posts. The Blog Post Navigator automatically
|
541
|
+
generates different views to explore articles by Categoy, Date, or all posts
|
542
|
+
from an Archive View.
|
543
|
+
|
544
|
+
.Blog Post Navigator
|
545
|
+
lightbox::images--blog-post-navigator[ 600, {data-images--blog-post-navigator} ]
|
546
|
+
|
547
|
+
[role="mt-5"]
|
548
|
+
=== Block elements
|
549
|
+
|
550
|
+
Banners and panels are complex but configurable building blocks, typically
|
551
|
+
used for home and landing pages. Examples how to use banners and panels
|
552
|
+
can be found with the included starter web for the homepage.
|
553
|
+
|
554
|
+
.Teaser Banner
|
555
|
+
lightbox::images--teaser-banner[ 600, {data-images--teaser-banner} ]
|
556
|
+
|
557
|
+
.Intro Panel
|
558
|
+
lightbox::images--intro-panel[ 600, {data-images--intro-panel} ]
|
559
|
+
|
560
|
+
[role="mt-5"]
|
509
561
|
=== Asciidoctor extensions
|
510
562
|
|
511
563
|
J1 Template implements a bunch of incubating Ruby-based extensions for
|
@@ -513,11 +565,11 @@ Asciidoctor. Using Asciidoctor extensions, it's easy to integrate lightboxes,
|
|
513
565
|
galleries, icon fonts, and other complex elements using Asciidoc tags with
|
514
566
|
your content pages.
|
515
567
|
|
516
|
-
.MDI Icons
|
517
|
-
[source,
|
568
|
+
.MDI Icons
|
569
|
+
[source, noformat, role="noclip"]
|
518
570
|
----
|
519
|
-
mdi:home[2x, mdi-pulsed ml-3 mr-2 mb-2] Symbol icon (pulsed)
|
520
|
-
mdi:font-awesome[2x, ml-3 mr-2 mb-2] Brand icon
|
571
|
+
mdi:home[2x, mdi-pulsed ml-3 mr-2 mb-2] Symbol icon (pulsed)
|
572
|
+
mdi:font-awesome[2x, ml-3 mr-2 mb-2] Brand icon
|
521
573
|
mdi:apple[2x, md-indigo ml-3 mr-2] Brand icon (colored)
|
522
574
|
----
|
523
575
|
|
@@ -528,28 +580,7 @@ mdi:font-awesome[2x, ml-3 mr-2 mb-2] Brand icon +
|
|
528
580
|
mdi:apple[2x, md-indigo ml-3 mr-2] Brand icon (colored)
|
529
581
|
====
|
530
582
|
|
531
|
-
|
532
|
-
|
533
|
-
Banners and panels are complex but configurable building blocks, typically used
|
534
|
-
for home and landing pages. Examples how to use banners and panels can be found
|
535
|
-
with the included starter web for the homepage.
|
536
|
-
|
537
|
-
.Teaser Banner
|
538
|
-
lightbox::images--teaser-banner[ 600, {data-images--teaser-banner} ]
|
539
|
-
|
540
|
-
.Intro Panel
|
541
|
-
lightbox::images--intro-panel[ 600, {data-images--intro-panel} ]
|
542
|
-
|
543
|
-
=== Blog Post Navigation
|
544
|
-
|
545
|
-
To make your Blog Articles available to your vistors, J1 offers an easy to use
|
546
|
-
navigation module for all your posts. The Blog Post Navigator automatically
|
547
|
-
generates different views to explore articles by Categoy, Date, or all posts
|
548
|
-
from an Archive View.
|
549
|
-
|
550
|
-
.Blog Post Navigator
|
551
|
-
lightbox::images--blog-post-navigator[ 600, {data-images--blog-post-navigator} ]
|
552
|
-
|
583
|
+
[role="mt-5"]
|
553
584
|
=== Featured example content
|
554
585
|
|
555
586
|
All pages from the roundtrip section are provided by the starter web
|
@@ -559,12 +590,15 @@ could be taken from these pages and are easy to use with your website.
|
|
559
590
|
.Example Content (Icon Fonts)
|
560
591
|
lightbox::images--example-content[ 600, {data-images--example-content} ]
|
561
592
|
|
562
|
-
|
593
|
+
[role="mt-5"]
|
594
|
+
=== Royalty Free Images
|
563
595
|
|
564
596
|
All images for a *Starter Web*, for example, from the roundtrip section, are
|
565
597
|
included with J1 Template. All images are taken from Unsplash.com as
|
566
598
|
*Royalty Free* images and can be used without paying any license fees.
|
567
599
|
|
600
|
+
|
601
|
+
[role="mt-5"]
|
568
602
|
== Integrations
|
569
603
|
|
570
604
|
The Internet of today has changed a lot. The new digital world is called the cloud.
|
@@ -572,24 +606,20 @@ Services out of the cloud is a fast-growing business. J1 Template integrates clo
|
|
572
606
|
services to extend the functionality of a web for commenting features or Bootstrap
|
573
607
|
themes, for example.
|
574
608
|
|
575
|
-
/////
|
576
|
-
mdi:google-ads[2x, md-blue ml-3 mr-2]
|
577
|
-
<<Google Ads>> +
|
578
|
-
/////
|
579
|
-
|
580
609
|
mdi:theme-light-dark[2x, md-blue ml-3 mr-2]
|
581
610
|
<<Bootstrap Themes>> (Bootswatch) +
|
582
611
|
mdi:comment[2x, md-blue ml-3 mr-2]
|
583
612
|
<<Comment providers>> +
|
584
|
-
mdi:language-python[2x, md-blue ml-3 mr-2]
|
585
|
-
<<Jupyter Notebook>> +
|
586
613
|
mdi:google-analytics[2x, md-blue ml-3 mr-2]
|
587
614
|
<<Google Analytics>> +
|
615
|
+
mdi:google-ads[2x, md-blue ml-3 mr-2]
|
616
|
+
<<Google Adsense>> +
|
588
617
|
mdi:youtube[2x, md-blue ml-3 mr-2]
|
589
618
|
<<YouTube Video>> +
|
590
619
|
mdi:vimeo[2x, md-blue ml-3 mr-2]
|
591
620
|
<<Vimeo Video>>
|
592
621
|
|
622
|
+
[role="mt-5"]
|
593
623
|
=== Bootstrap Themes
|
594
624
|
|
595
625
|
The Themes for the template system J1 are based on the free and open-source
|
@@ -612,6 +642,7 @@ link:{url-bootswatch--home}[Bootswatch, {browser-window--new}] is at least a
|
|
612
642
|
good base for your modifications: your unique design. J1 integrates all
|
613
643
|
available themes from _Bootswatch_ with the navigator module.
|
614
644
|
|
645
|
+
[role="mt-5"]
|
615
646
|
=== Comment providers
|
616
647
|
|
617
648
|
Comments became an integral part of almost each website on the web. People
|
@@ -654,80 +685,7 @@ your visitors do not agree on cookies needed for Diqus, DQC gets
|
|
654
685
|
automatically disabled, and all related cookies are deleted from the user's
|
655
686
|
system.
|
656
687
|
|
657
|
-
|
658
|
-
|
659
|
-
Jupyter Notebook (JN) is an open source web application that allows data
|
660
|
-
scientists to create and share documents that include live code, equations,
|
661
|
-
and other multimedia resources. JN combines two components:
|
662
|
-
|
663
|
-
A web application::
|
664
|
-
a browser-based tool for interactive authoring of documents which combine
|
665
|
-
explanatory text, mathematics, computations and their rich media output.
|
666
|
-
|
667
|
-
Notebook documents::
|
668
|
-
a representation of all content visible in the web application, including
|
669
|
-
inputs and outputs of the computations, explanatory text, mathematics,
|
670
|
-
images, and rich media representations of objects.
|
671
|
-
|
672
|
-
The Jupyter Notebook *App* is a server-client application that allows editing
|
673
|
-
and running notebook documents via a web browser. The Notebook App can be
|
674
|
-
executed on a local desktop requiring no internet access or can be installed
|
675
|
-
on a remote server and accessed through the internet.
|
676
|
-
|
677
|
-
Notebook *documents* are used for all sorts of data science tasks such as
|
678
|
-
exploratory data analysis (EDA), data cleaning and transformation,
|
679
|
-
data visualization, statistical modeling, machine learning, and deep
|
680
|
-
learning. Jupyter notebooks are especially useful for *showing the work*
|
681
|
-
that your data team has done through a combination of code, markdown, links,
|
682
|
-
and images.
|
683
|
-
|
684
|
-
.NBI Textbook Example (excerpt)
|
685
|
-
[source, python]
|
686
|
-
----
|
687
|
-
import nbinteract as nbi
|
688
|
-
import numpy as np
|
689
|
-
----
|
690
|
-
|
691
|
-
[source, python]
|
692
|
-
----
|
693
|
-
def x_fn(n):
|
694
|
-
return np.arange(n)
|
695
|
-
|
696
|
-
def y_fn(xs, offset):
|
697
|
-
return xs + offset
|
698
|
-
|
699
|
-
|
700
|
-
options = {
|
701
|
-
'title': 'Bar chart',
|
702
|
-
'xlabel': 'Number of bars (n)',
|
703
|
-
'ylabel': 'Offset value',
|
704
|
-
'animation_duration': 500,
|
705
|
-
'aspect_ratio': 1.778,
|
706
|
-
'ylim': (0, 20)
|
707
|
-
}
|
708
|
-
|
709
|
-
layouts = {
|
710
|
-
'plot_height': '480px',
|
711
|
-
'plot_width': '800px',
|
712
|
-
}
|
713
|
-
|
714
|
-
bar_chart = nbi.bar(
|
715
|
-
x_fn,
|
716
|
-
y_fn,
|
717
|
-
n=(3, 10),
|
718
|
-
offset=(1, 10),
|
719
|
-
options=options,
|
720
|
-
layouts=layouts
|
721
|
-
)
|
722
|
-
|
723
|
-
bar_chart
|
724
|
-
----
|
725
|
-
|
726
|
-
lightbox::nbi-textbook-example[ 800, {data-images--nbi-textbook-example} ]
|
727
|
-
|
728
|
-
HTML exported Jupyter Notebooks (so-called Textbooks) can be integrated
|
729
|
-
with every webpage of a J1 website using the J1 NBI module.
|
730
|
-
|
688
|
+
[role="mt-5"]
|
731
689
|
=== Google Analytics
|
732
690
|
|
733
691
|
Google Analytics (GAL) provides access to a massive amount of data related
|
@@ -755,14 +713,14 @@ If your visitors do not agree on cooies for *Analysis*, Google Analytics gets
|
|
755
713
|
automatically disabled and all cookies from Google are deleted from the
|
756
714
|
user's system.
|
757
715
|
|
758
|
-
|
759
|
-
=== Google
|
716
|
+
[role="mt-5"]
|
717
|
+
=== Google Adsense
|
760
718
|
|
761
|
-
Google
|
719
|
+
Google Adsense (GAD) is integrated by pure configuration. Simply enable the
|
762
720
|
provider and set your your access credentials to the configuration, and
|
763
721
|
you're done.
|
764
|
-
/////
|
765
722
|
|
723
|
+
[role="mt-5"]
|
766
724
|
=== YouTube Video
|
767
725
|
|
768
726
|
J1 Template supports YouTube and Vimeo video content out-of-the-box.
|
@@ -779,6 +737,7 @@ gallery::jg_video_online_youtube_2_short[role="mb-5"]
|
|
779
737
|
.YouTube Video
|
780
738
|
gallery::jg_video_online_youtube_2_short[role="mb-5"]
|
781
739
|
|
740
|
+
[role="mt-5"]
|
782
741
|
=== Vimeo Video
|
783
742
|
|
784
743
|
J1 Template supports Vimeo video content out-of-the-box. The type of content
|
@@ -1,14 +1,19 @@
|
|
1
1
|
---
|
2
2
|
title: Bookshelf
|
3
|
+
title_extention: Collections are Jekyll's most powerful feature
|
3
4
|
tagline: All Books
|
5
|
+
|
4
6
|
date: 2023-01-29
|
5
7
|
#last_modified: 2023-01-01
|
8
|
+
|
6
9
|
description: >
|
7
|
-
J1 Template is a Bootstrap V5 website template for the static
|
8
|
-
site generator Jekyll.
|
9
10
|
All available articles in the Bookshelf. The content is
|
10
11
|
automatically generated and taken from the articles of the
|
11
12
|
collections in the Bookshelf contains.
|
13
|
+
keywords: >
|
14
|
+
open source, free, template, jekyll, jekyllone, web,
|
15
|
+
sites, static, jamstack, bootstrap,
|
16
|
+
collections
|
12
17
|
|
13
18
|
categories: [ Books ]
|
14
19
|
tags: [ Bookshelf ]
|
@@ -73,6 +78,7 @@ the grid positions calculated by the module.
|
|
73
78
|
|
74
79
|
// Include sub-documents (if any)
|
75
80
|
// -----------------------------------------------------------------------------
|
81
|
+
[role="mt-5"]
|
76
82
|
== Biography
|
77
83
|
|
78
84
|
A biography is a written account of a person's life, typically focusing on
|
@@ -89,6 +95,7 @@ to society.
|
|
89
95
|
|
90
96
|
masonry::collection_biography[role="mb-5"]
|
91
97
|
|
98
|
+
[role="mt-5"]
|
92
99
|
== Fantasy
|
93
100
|
|
94
101
|
The fantasy genre has become popular the past few years. Once a genre
|
@@ -99,6 +106,7 @@ all ages.
|
|
99
106
|
|
100
107
|
masonry::collection_fantasy[role="mb-5"]
|
101
108
|
|
109
|
+
[role="mt-5"]
|
102
110
|
== Romance
|
103
111
|
|
104
112
|
The romance genre is a popular category of books that consistently churns out
|
@@ -1,14 +1,19 @@
|
|
1
1
|
---
|
2
2
|
title: Biography
|
3
|
+
title_extention: Collections are Jekyll's most powerful feature
|
3
4
|
tagline: Today's People
|
5
|
+
|
4
6
|
date: 2023-01-29
|
5
7
|
#last_modified: 2023-01-01
|
8
|
+
|
6
9
|
description: >
|
7
|
-
J1 Template is a Bootstrap V5 website template for the static
|
8
|
-
site generator Jekyll.
|
9
10
|
Today's people is a collection contains the biography's
|
10
11
|
of celebrities well known by most of us. Find the books issued
|
11
12
|
by musicans, actors and more.
|
13
|
+
keywords: >
|
14
|
+
open source, free, template, jekyll, jekyllone, web,
|
15
|
+
sites, static, jamstack, bootstrap,
|
16
|
+
collections
|
12
17
|
|
13
18
|
categories: [ Books ]
|
14
19
|
tags: [ Biography, Preview ]
|
@@ -71,9 +76,9 @@ the grid positions calculated by the module.
|
|
71
76
|
|
72
77
|
// Include sub-documents (if any)
|
73
78
|
// -----------------------------------------------------------------------------
|
79
|
+
[role="mt-5"]
|
74
80
|
== Available Books
|
75
81
|
|
76
|
-
[role="mb-4"]
|
77
82
|
Find below all available articles in the `biography` collection. The content
|
78
83
|
is automatically generated and taken from the articles this collection
|
79
84
|
contains.
|
@@ -1,11 +1,17 @@
|
|
1
1
|
---
|
2
2
|
title: Fantasy
|
3
|
+
title_extention: Collections are Jekyll's most powerful feature
|
3
4
|
tagline: Fantasy Literature
|
5
|
+
|
4
6
|
date: 2023-01-29
|
7
|
+
#last_modified: 2023-01-01
|
8
|
+
|
5
9
|
description: >
|
6
|
-
J1 Template is a Bootstrap V5 website template for the static
|
7
|
-
site generator Jekyll.
|
8
10
|
Fantasy Literature in the Book Shelf
|
11
|
+
keywords: >
|
12
|
+
open source, free, template, jekyll, jekyllone, web,
|
13
|
+
sites, static, jamstack, bootstrap,
|
14
|
+
collections
|
9
15
|
|
10
16
|
categories: [ Books ]
|
11
17
|
tags: [ Fantasy, Preview ]
|
@@ -16,8 +22,8 @@ image:
|
|
16
22
|
height: 1280
|
17
23
|
|
18
24
|
robots:
|
19
|
-
index:
|
20
|
-
follow:
|
25
|
+
index: true
|
26
|
+
follow: true
|
21
27
|
|
22
28
|
toc: false
|
23
29
|
fab_menu_id: default
|
@@ -70,6 +76,7 @@ the grid positions calculated by the module.
|
|
70
76
|
|
71
77
|
// Include sub-documents (if any)
|
72
78
|
// -----------------------------------------------------------------------------
|
79
|
+
[role="mt-5"]
|
73
80
|
== Available Books
|
74
81
|
|
75
82
|
[role="mb-4"]
|
@@ -1,11 +1,17 @@
|
|
1
1
|
---
|
2
2
|
title: Romance
|
3
|
+
title_extention: Collections are Jekyll's most powerful feature
|
3
4
|
tagline: Romance Literature
|
5
|
+
|
4
6
|
date: 2023-01-29
|
7
|
+
#last_modified: 2023-01-01
|
8
|
+
|
5
9
|
description: >
|
6
|
-
J1 Template is a Bootstrap V5 website template for the static
|
7
|
-
site generator Jekyll.
|
8
10
|
Romance Literature in the Book Shelf
|
11
|
+
keywords: >
|
12
|
+
open source, free, template, jekyll, jekyllone, web,
|
13
|
+
sites, static, jamstack, bootstrap,
|
14
|
+
collections
|
9
15
|
|
10
16
|
categories: [ Books ]
|
11
17
|
tags: [ Romance, Preview ]
|
@@ -16,8 +22,8 @@ image:
|
|
16
22
|
height: 1280
|
17
23
|
|
18
24
|
robots:
|
19
|
-
index:
|
20
|
-
follow:
|
25
|
+
index: true
|
26
|
+
follow: true
|
21
27
|
|
22
28
|
toc: false
|
23
29
|
fab_menu_id: default
|
@@ -70,9 +76,9 @@ the grid positions calculated by the module.
|
|
70
76
|
|
71
77
|
// Include sub-documents (if any)
|
72
78
|
// -----------------------------------------------------------------------------
|
79
|
+
[role="mt-5"]
|
73
80
|
== Available Books
|
74
81
|
|
75
|
-
[role="mb-4"]
|
76
82
|
Find below all available articles in the `romance` collection. The content is
|
77
83
|
automatically generated and taken from the articles this collection
|
78
84
|
contains.
|
@@ -1,13 +1,20 @@
|
|
1
1
|
---
|
2
|
-
layout: page
|
3
|
-
|
4
2
|
title: Jekyll Collections
|
3
|
+
title_extention: Collections are Jekyll's most powerful feature
|
5
4
|
tagline: What Collections Are
|
5
|
+
|
6
6
|
date: 2023-01-03
|
7
|
+
#last_modified: 2023-01-01
|
8
|
+
|
7
9
|
description: >
|
8
|
-
|
9
|
-
|
10
|
-
Jekyll
|
10
|
+
Collections are Jekyll's most powerful and simultaneously least understood
|
11
|
+
feature of the generator. Collections add another possibility, or use-case,
|
12
|
+
outside of Jekyll's post- and page-publishing functionality.
|
13
|
+
keywords: >
|
14
|
+
open source, free, template, jekyll, jekyllone, web,
|
15
|
+
sites, static, jamstack, bootstrap,
|
16
|
+
collections
|
17
|
+
|
11
18
|
categories: [ Jekyll, Collection ]
|
12
19
|
tags: [ Info, Overview ]
|
13
20
|
|
@@ -54,13 +61,16 @@ resource_options:
|
|
54
61
|
[role="dropcap"]
|
55
62
|
Collections are Jekyll's most powerful and simultaneously least understood
|
56
63
|
feature of the generator. Collections add another possibility, or use-case,
|
57
|
-
outside of Jekyll's post- and page-publishing functionality.
|
58
|
-
|
59
|
-
|
60
|
-
|
64
|
+
outside of Jekyll's post- and page-publishing functionality.
|
65
|
+
|
66
|
+
Collections have the potential to bring Jekyll's zen-like simplicity to all
|
67
|
+
sorts of other types of content that aren't ordered as with posts
|
68
|
+
(ordered by date), but have a set *relationship* with one another - hence
|
69
|
+
the name: _collection_.
|
61
70
|
|
62
71
|
// Include sub-documents (if any)
|
63
72
|
// -----------------------------------------------------------------------------
|
73
|
+
[role="mt-5"]
|
64
74
|
== Posts and Pages
|
65
75
|
|
66
76
|
////
|
@@ -73,8 +83,8 @@ image::{{page.image.name}}[{{page.title}}, width=1280]
|
|
73
83
|
|
74
84
|
Source: https://ben.balter.com/2015/02/20/jekyll-collections/[Ben Balter: Jekyll Collections, {browser-window--new}]
|
75
85
|
|
76
|
-
Most Jekyll sites are organized around two types of content, posts
|
77
|
-
and pages
|
86
|
+
Most Jekyll sites are organized around two types of content, posts known as
|
87
|
+
ordered content and pages, the un-ordered content.
|
78
88
|
|
79
89
|
* http://jekyllrb.com/docs/posts/[Posts, {browser-window--new}] are organized
|
80
90
|
reverse chronologically. You might use them for blog posts on a personal blog,
|
@@ -102,7 +112,7 @@ already failed". That's where Jekyll's
|
|
102
112
|
http://jekyllrb.com/docs/collections/[collections, {browser-window--new}]
|
103
113
|
come in.
|
104
114
|
|
105
|
-
|
115
|
+
[role="mt-5"]
|
106
116
|
== Not a post, a page - but a collection?
|
107
117
|
|
108
118
|
Collections add another possibility, or use-case, outside of Jekyll's
|
@@ -163,7 +173,7 @@ collections somewhat like Jekyll's
|
|
163
173
|
http://jekyllrb.com/docs/datafiles/[data folder support, {browser-window--new}],
|
164
174
|
but with the potential to generate content, and be placed into their own
|
165
175
|
specific part of your Jekyll site, so a lot more robust. Like `data` files,
|
166
|
-
they can support arbitrary key/values through
|
176
|
+
they can support arbitrary key/values through front matter, but they also
|
167
177
|
support a full content body (like posts and pages), and can be broken out
|
168
178
|
into separate files. If I wanted to break out my bakery's hours, I might
|
169
179
|
have a `data/hours.yml` file that looked something like this:
|
@@ -205,7 +215,7 @@ contents automatically generated, or use the where syntax to get the
|
|
205
215
|
contents of specific collections to add common content, or devices to
|
206
216
|
your site.
|
207
217
|
|
208
|
-
|
218
|
+
[role="mt-5"]
|
209
219
|
== Using collections
|
210
220
|
|
211
221
|
The examples above were a slight simplification. There's one other step.
|