j1-template 2022.5.3 → 2022.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (359) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/layouts/content_generator_news_panel_posts.html +61 -40
  3. data/_includes/themes/j1/layouts/content_generator_page.html +22 -22
  4. data/_includes/themes/j1/layouts/content_generator_post.html +1 -1
  5. data/_includes/themes/j1/layouts/layout_metadata_generator.html +5 -86
  6. data/_includes/themes/j1/{blocks → procedures/blocks}/footer/boxes/about_box.proc +0 -0
  7. data/_includes/themes/j1/{blocks → procedures/blocks}/footer/boxes/contacts_box.proc +0 -0
  8. data/_includes/themes/j1/{blocks → procedures/blocks}/footer/boxes/issue.proc +0 -0
  9. data/_includes/themes/j1/{blocks → procedures/blocks}/footer/boxes/legal_statements.proc +0 -0
  10. data/_includes/themes/j1/{blocks → procedures/blocks}/footer/boxes/links_box.proc +0 -0
  11. data/_includes/themes/j1/{blocks → procedures/blocks}/footer/boxes/news_box.proc +0 -0
  12. data/_includes/themes/j1/{blocks → procedures/blocks}/footer/boxes/social_media_icons.proc +0 -0
  13. data/_includes/themes/j1/procedures/blocks/get_wave.proc +211 -0
  14. data/_includes/themes/j1/procedures/collections/create_collection_article_preview.proc +1 -1
  15. data/_includes/themes/j1/procedures/global/create_word_cloud.proc +1 -1
  16. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +2 -2
  17. data/_includes/themes/j1/procedures/posts/pager.proc +9 -10
  18. data/_layouts/default.html +26 -13
  19. data/apps/private/README.txt +1 -0
  20. data/apps/protected/README.txt +1 -0
  21. data/apps/public/README.txt +1 -0
  22. data/assets/data/banner.html +38 -8
  23. data/assets/data/footer.html +31 -11
  24. data/assets/data/panel.html +118 -27
  25. data/assets/themes/j1/adapter/js/attic.js +4 -4
  26. data/assets/themes/j1/adapter/js/comments.js +18 -7
  27. data/assets/themes/j1/adapter/js/waves.js +227 -0
  28. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +10 -5
  29. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +1 -1
  30. data/assets/themes/j1/core/css/themes/theme_vapor/bootstrap.css +10 -5
  31. data/assets/themes/j1/core/css/themes/theme_vapor/bootstrap.min.css +1 -1
  32. data/assets/themes/j1/core/css/themes/unodark/bootstrap.css +23 -69
  33. data/assets/themes/j1/core/css/themes/unodark/bootstrap.min.css +1 -1
  34. data/assets/themes/j1/core/css/themes/unolight/bootstrap.css +323 -129
  35. data/assets/themes/j1/core/css/themes/unolight/bootstrap.min.css +9 -9
  36. data/assets/themes/j1/core/css/vendor.css +11 -8
  37. data/assets/themes/j1/core/css/vendor.min.css +1 -1
  38. data/assets/themes/j1/core/fonts/fontawesome_5/LICENSE.txt +34 -0
  39. data/assets/themes/j1/core/fonts/material_design_icons/LICENSE.txt +97 -0
  40. data/assets/themes/j1/core/fonts/material_design_icons_light/LICENSE.txt +92 -0
  41. data/assets/themes/j1/core/fonts/roboto/LICENSE.txt +11 -0
  42. data/assets/themes/j1/core/js/template.js +419 -746
  43. data/assets/themes/j1/core/js/template.min.js.map +1 -1
  44. data/assets/themes/j1/modules/backstretch/js/backstretch.js +1 -1
  45. data/assets/themes/j1/modules/backstretch/js/backstretch.min.js +1 -1
  46. data/assets/themes/j1/modules/bokeh/LICENSE.txt +28 -0
  47. data/assets/themes/j1/modules/jquery/js/extensions/hasClass.js +17 -0
  48. data/assets/themes/j1/modules/jquery/js/extensions/hasClass.min.js +17 -0
  49. data/assets/themes/j1/modules/jquery/js/extensions/removeClass.js +18 -0
  50. data/assets/themes/j1/modules/jquery/js/extensions/removeClass.min.js +17 -0
  51. data/assets/themes/j1/modules/later/LICENSE.txt +21 -0
  52. data/assets/themes/j1/modules/log4javascript/license.txt +201 -0
  53. data/assets/themes/j1/modules/lunr/stopwords/de.txt +229 -0
  54. data/assets/themes/j1/modules/lunr/stopwords/en.txt +119 -0
  55. data/assets/themes/j1/modules/masterslider/LICENSE.txt +621 -0
  56. data/assets/themes/j1/modules/masterslider/README.txt +531 -0
  57. data/assets/themes/j1/modules/msDropdown/LICENSE.txt +20 -0
  58. data/assets/themes/j1/modules/nbinteract-core/LICENSE.txt +60 -0
  59. data/assets/themes/j1/modules/rouge/css/themes.txt +46 -0
  60. data/assets/themes/j1/modules/vega/LICENSE.txt +27 -0
  61. data/lib/j1/version.rb +1 -1
  62. data/lib/starter_web/Gemfile +20 -17
  63. data/lib/starter_web/README.md +5 -5
  64. data/lib/starter_web/_config.yml +234 -143
  65. data/lib/starter_web/_data/blocks/banner.yml +18 -2
  66. data/lib/starter_web/_data/blocks/defaults/footer.yml +3 -1
  67. data/lib/starter_web/_data/blocks/defaults/panel.yml +4 -0
  68. data/lib/starter_web/_data/blocks/footer.yml +12 -1
  69. data/lib/starter_web/_data/blocks/panel.yml +88 -19
  70. data/lib/starter_web/_data/j1_config.yml +2 -2
  71. data/lib/starter_web/_data/layouts/collection.yml +0 -9
  72. data/lib/starter_web/_data/layouts/home.yml +21 -30
  73. data/lib/starter_web/_data/layouts/news_panel_posts.yml +0 -9
  74. data/lib/starter_web/_data/layouts/page.yml +0 -9
  75. data/lib/starter_web/_data/layouts/post.yml +0 -9
  76. data/lib/starter_web/_data/modules/blog_navigator.yml +6 -0
  77. data/lib/starter_web/_data/modules/defaults/blog_navigator.yml +15 -8
  78. data/lib/starter_web/_data/modules/defaults/cookieconsent.yml +5 -4
  79. data/lib/starter_web/_data/modules/defaults/navigator.yml +1 -1
  80. data/lib/starter_web/_data/modules/defaults/waves.yml +32 -0
  81. data/lib/starter_web/_data/modules/navigator_menu.yml +48 -120
  82. data/lib/starter_web/_data/modules/waves.yml +32 -0
  83. data/lib/starter_web/_data/plugins/defaults/feed.yml +82 -0
  84. data/lib/starter_web/_data/plugins/defaults/seo-tags.yml +65 -0
  85. data/lib/starter_web/_data/plugins/defaults/sitemap.yml +66 -0
  86. data/lib/starter_web/_data/plugins/feed.yml +35 -0
  87. data/lib/starter_web/_data/plugins/seo-tags.yml +30 -0
  88. data/lib/starter_web/_data/plugins/sitemap.yml +30 -0
  89. data/lib/starter_web/_data/resources.yml +22 -0
  90. data/lib/starter_web/_data/templates/feed.xml +191 -0
  91. data/lib/starter_web/_data/templates/robots.txt +1 -0
  92. data/lib/starter_web/_data/templates/seo-tags.html +140 -0
  93. data/lib/starter_web/_data/templates/sitemap.xml +36 -0
  94. data/lib/starter_web/_includes/attributes.asciidoc +49 -47
  95. data/lib/starter_web/_includes/custom/static/bs5_accordion.html +84 -0
  96. data/lib/starter_web/_includes/custom/templates/bs5_accordion.html +103 -0
  97. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/admonition-block-answer.rb +0 -0
  98. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/admonition-block-question.rb +0 -0
  99. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/banner.rb +0 -0
  100. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/callout.rb +0 -0
  101. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/carousel-block.rb +0 -0
  102. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/conum.rb +0 -0
  103. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/fab-icon-inline.rb +0 -0
  104. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/fas-icon-inline.rb +0 -0
  105. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/flag-icon-inline.rb +0 -0
  106. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/gallery-block.rb +0 -0
  107. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/gist-block.rb +0 -0
  108. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/iconify-icon-inline.rb +0 -0
  109. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/lightbox-block.rb +0 -0
  110. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/lorem_inline.rb +0 -0
  111. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/masterslider-block.rb +0 -0
  112. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/mdi-icon-inline.rb +0 -0
  113. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/panel.rb +0 -0
  114. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/range-slider-block.rb +0 -0
  115. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/shout-block.rb +0 -0
  116. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/textbook-block.rb +0 -0
  117. data/lib/starter_web/_plugins/{asciidoctor-extensions → asciidoctor}/twitter-emoji-inline.rb +0 -0
  118. data/lib/starter_web/_plugins/{debug.rb → filter/debug.rb} +0 -0
  119. data/lib/starter_web/_plugins/{encodeBase64.rb → filter/encodeBase64.rb} +0 -0
  120. data/lib/starter_web/_plugins/{encryptAES.rb → filter/encryptAES.rb} +0 -0
  121. data/lib/starter_web/_plugins/{filters.rb → filter/filters.rb} +11 -0
  122. data/lib/starter_web/_plugins/{minifyJS.rb → filter/minifyJS.rb} +0 -0
  123. data/lib/starter_web/_plugins/{minifyJSON.rb → filter/minifyJSON.rb} +0 -0
  124. data/lib/starter_web/_plugins/{prettify.rb → filter/prettify.rb} +0 -0
  125. data/lib/starter_web/_plugins/filter/xml_prettify.rb +36 -0
  126. data/lib/starter_web/_plugins/{symlink_watcher.rb → helper/symlink_watcher.rb} +0 -0
  127. data/lib/starter_web/_plugins/{date-i18n.rb → i18n/date.rb} +1 -1
  128. data/lib/starter_web/_plugins/{lunr_index.rb → index/lunr.rb} +30 -30
  129. data/lib/starter_web/_plugins/seo/j1-feed.rb +268 -0
  130. data/lib/starter_web/_plugins/seo/j1-seo-tags.rb +717 -0
  131. data/lib/starter_web/_plugins/seo/j1-sitemap.rb +140 -0
  132. data/lib/starter_web/assets/images/banner/scalable/wave.svg +13 -0
  133. data/lib/starter_web/assets/images/blocks/waves/scalable/1280x100/wave-1.svg +63 -0
  134. data/lib/starter_web/assets/images/blocks/waves/scalable/1280x100/wave-2.svg +60 -0
  135. data/lib/starter_web/assets/images/blocks/waves/scalable/1280x100/wave-3.svg +64 -0
  136. data/lib/starter_web/assets/images/blocks/waves/scalable/1280x100/wave-4.svg +62 -0
  137. data/lib/starter_web/assets/images/blocks/waves/scalable/1920x100/wave-1.svg +64 -0
  138. data/lib/starter_web/assets/images/blocks/waves/scalable/1920x100/wave-2.svg +60 -0
  139. data/lib/starter_web/assets/images/blocks/waves/scalable/1920x100/wave-3.svg +65 -0
  140. data/lib/starter_web/assets/images/blocks/waves/scalable/1920x100/wave-4.svg +62 -0
  141. data/lib/starter_web/assets/images/collections/blog/featured/dynamic-web-access.png +0 -0
  142. data/lib/starter_web/assets/images/collections/blog/featured/jamstack-generators.png +0 -0
  143. data/lib/starter_web/assets/images/collections/blog/featured/static-web-access.png +0 -0
  144. data/lib/starter_web/assets/images/icons/jekyll/logo-2x.png +0 -0
  145. data/lib/starter_web/assets/images/icons/jekyll/octojekyll.png +0 -0
  146. data/lib/starter_web/assets/images/modules/attics/1280x800/j1-template.png +0 -0
  147. data/lib/starter_web/assets/images/modules/attics/1280x800/jekyll-generator.png +0 -0
  148. data/lib/starter_web/assets/images/modules/attics/1280x800jekyll-generator.jpg +0 -0
  149. data/lib/starter_web/assets/images/modules/attics/1920x1280/{ben-kolde.jpg → _ben-kolde.jpg} +0 -0
  150. data/lib/starter_web/assets/images/modules/attics/1920x1280/_moritz-kindler.jpg +0 -0
  151. data/lib/starter_web/assets/images/modules/attics/1920x1280/alina-grubnyak.jpg +0 -0
  152. data/lib/starter_web/assets/images/modules/attics/1920x1280/andrea-badino.jpg +0 -0
  153. data/lib/starter_web/assets/images/modules/attics/1920x1280/brad-neathery.jpg +0 -0
  154. data/lib/starter_web/assets/images/modules/attics/1920x1280/bruno-figueiredo.jpg +0 -0
  155. data/lib/starter_web/assets/images/modules/attics/1920x1280/fly-d.jpg +0 -0
  156. data/lib/starter_web/assets/images/modules/attics/1920x1280/guillaume-bolduc.jpg +0 -0
  157. data/lib/starter_web/assets/images/modules/attics/1920x1280/melanie-deziel.jpg +0 -0
  158. data/lib/starter_web/assets/images/modules/attics/1920x1280/milad-fakurian.jpg +0 -0
  159. data/lib/starter_web/assets/images/modules/attics/1920x1280/{_nasa.jpg → nasa.jpg} +0 -0
  160. data/lib/starter_web/assets/images/modules/attics/1920x1280/quino-al-2.jpg +0 -0
  161. data/lib/starter_web/assets/images/modules/attics/lunr-1280x800.jpg +0 -0
  162. data/lib/starter_web/assets/images/modules/attics/no-time-1920x1280.jpg +0 -0
  163. data/lib/starter_web/assets/images/modules/attics/{gift-from-hand-1920x1280.jpg → shutterstock_sponsor-1920x1280.jpg} +0 -0
  164. data/lib/starter_web/assets/images/modules/gallery/mega_cities/author.txt +75 -0
  165. data/lib/starter_web/assets/images/pages/egrid/bg.png +0 -0
  166. data/lib/starter_web/assets/images/pages/egrid/black_denim.png +0 -0
  167. data/lib/starter_web/assets/images/pages/egrid/explanation.png +0 -0
  168. data/lib/starter_web/assets/images/pages/egrid/html_markup.png +0 -0
  169. data/lib/starter_web/assets/images/pages/egrid/large/1.jpg +0 -0
  170. data/lib/starter_web/assets/images/pages/egrid/large/10.jpg +0 -0
  171. data/lib/starter_web/assets/images/pages/egrid/large/11.jpg +0 -0
  172. data/lib/starter_web/assets/images/pages/egrid/large/12.jpg +0 -0
  173. data/lib/starter_web/assets/images/pages/egrid/large/13.jpg +0 -0
  174. data/lib/starter_web/assets/images/pages/egrid/large/14.jpg +0 -0
  175. data/lib/starter_web/assets/images/pages/egrid/large/15.jpg +0 -0
  176. data/lib/starter_web/assets/images/pages/egrid/large/16.jpg +0 -0
  177. data/lib/starter_web/assets/images/pages/egrid/large/17.jpg +0 -0
  178. data/lib/starter_web/assets/images/pages/egrid/large/18.jpg +0 -0
  179. data/lib/starter_web/assets/images/pages/egrid/large/19.jpg +0 -0
  180. data/lib/starter_web/assets/images/pages/egrid/large/2.jpg +0 -0
  181. data/lib/starter_web/assets/images/pages/egrid/large/20.jpg +0 -0
  182. data/lib/starter_web/assets/images/pages/egrid/large/3.jpg +0 -0
  183. data/lib/starter_web/assets/images/pages/egrid/large/4.jpg +0 -0
  184. data/lib/starter_web/assets/images/pages/egrid/large/5.jpg +0 -0
  185. data/lib/starter_web/assets/images/pages/egrid/large/6.jpg +0 -0
  186. data/lib/starter_web/assets/images/pages/egrid/large/7.jpg +0 -0
  187. data/lib/starter_web/assets/images/pages/egrid/large/8.jpg +0 -0
  188. data/lib/starter_web/assets/images/pages/egrid/large/9.jpg +0 -0
  189. data/lib/starter_web/assets/images/pages/egrid/loading.gif +0 -0
  190. data/lib/starter_web/assets/images/pages/egrid/loading_dark.gif +0 -0
  191. data/lib/starter_web/assets/images/pages/egrid/nav-icon.png +0 -0
  192. data/lib/starter_web/assets/images/pages/egrid/nav.png +0 -0
  193. data/lib/starter_web/assets/images/pages/egrid/small/1.jpg +0 -0
  194. data/lib/starter_web/assets/images/pages/egrid/small/10.jpg +0 -0
  195. data/lib/starter_web/assets/images/pages/egrid/small/11.jpg +0 -0
  196. data/lib/starter_web/assets/images/pages/egrid/small/12.jpg +0 -0
  197. data/lib/starter_web/assets/images/pages/egrid/small/13.jpg +0 -0
  198. data/lib/starter_web/assets/images/pages/egrid/small/14.jpg +0 -0
  199. data/lib/starter_web/assets/images/pages/egrid/small/15.jpg +0 -0
  200. data/lib/starter_web/assets/images/pages/egrid/small/16.jpg +0 -0
  201. data/lib/starter_web/assets/images/pages/egrid/small/17.jpg +0 -0
  202. data/lib/starter_web/assets/images/pages/egrid/small/18.jpg +0 -0
  203. data/lib/starter_web/assets/images/pages/egrid/small/19.jpg +0 -0
  204. data/lib/starter_web/assets/images/pages/egrid/small/1a.jpg +0 -0
  205. data/lib/starter_web/assets/images/pages/egrid/small/2.jpg +0 -0
  206. data/lib/starter_web/assets/images/pages/egrid/small/20.jpg +0 -0
  207. data/lib/starter_web/assets/images/pages/egrid/small/3.jpg +0 -0
  208. data/lib/starter_web/assets/images/pages/egrid/small/4.jpg +0 -0
  209. data/lib/starter_web/assets/images/pages/egrid/small/5.jpg +0 -0
  210. data/lib/starter_web/assets/images/pages/egrid/small/6.jpg +0 -0
  211. data/lib/starter_web/assets/images/pages/egrid/small/7.jpg +0 -0
  212. data/lib/starter_web/assets/images/pages/egrid/small/8.jpg +0 -0
  213. data/lib/starter_web/assets/images/pages/egrid/small/9.jpg +0 -0
  214. data/lib/starter_web/assets/images/pages/roundtrip/500_themes/themes-menu-1280x800.jpg +0 -0
  215. data/lib/starter_web/assets/images/promo/home/screenshot.jpg +0 -0
  216. data/lib/starter_web/assets/images/promo/jekyll/jekyll-generator.png +0 -0
  217. data/lib/starter_web/assets/images/promo/jekyll/jekyll-og.png +0 -0
  218. data/lib/starter_web/collections/asciidoc_skeletons/simple-post/_posts/yyyy-mm-dd-your-post-name.asciidoc +13 -10
  219. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +8 -3
  220. data/lib/starter_web/collections/posts/public/featured/_posts/2021-01-01-about-cookies.adoc +11 -6
  221. data/lib/starter_web/collections/posts/public/featured/_posts/2021-02-01-site-generators.adoc +13 -10
  222. data/lib/starter_web/collections/posts/public/featured/_posts/2022-02-01-about-j1.adoc +12 -9
  223. data/lib/starter_web/collections/posts/public/featured/_posts/_includes/attributes.asciidoc +2 -2
  224. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-wiki-series.adoc +13 -5
  225. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-wiki-series.adoc +13 -6
  226. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-wiki-series.adoc +13 -6
  227. data/lib/starter_web/index.html +91 -46
  228. data/lib/starter_web/package.json +1 -1
  229. data/lib/starter_web/pages/public/about/features.adoc +30 -27
  230. data/lib/starter_web/pages/public/about/reporting_issues.adoc +13 -11
  231. data/lib/starter_web/pages/public/about/site.adoc +2 -6
  232. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/000_intro.adoc +8 -10
  233. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/100_converter.adoc +8 -12
  234. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/200_themes.adoc +8 -11
  235. data/lib/starter_web/pages/public/asciidoc_skeletons/documentation/documentation.adoc +9 -8
  236. data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +9 -14
  237. data/lib/starter_web/pages/public/asciidoc_skeletons/simple-document/simple.adoc +9 -14
  238. data/lib/starter_web/pages/public/blog/navigator/{archive.html → archive/allview.html} +53 -26
  239. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +45 -20
  240. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +49 -19
  241. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +57 -53
  242. data/lib/starter_web/pages/public/blog/navigator/index.html +212 -35
  243. data/lib/starter_web/pages/public/features/general.adoc +12 -30
  244. data/lib/starter_web/pages/public/features/template.adoc +9 -33
  245. data/lib/starter_web/pages/public/learn/quickstart.adoc +10 -8
  246. data/lib/starter_web/pages/public/learn/roundtrip/_includes/attributes.asciidoc +0 -7
  247. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/410_table_bs_modal_examples.asciidoc +2 -2
  248. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/themes_bootstrap.asciidoc +51 -0
  249. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/themes_rouge.asciidoc +110 -0
  250. data/lib/starter_web/pages/public/learn/roundtrip/asciidoc_extensions.adoc +11 -9
  251. data/lib/starter_web/pages/public/learn/roundtrip/bootstrap_themes.adoc +80 -0
  252. data/lib/starter_web/pages/public/learn/roundtrip/icon_fonts.adoc +9 -7
  253. data/lib/starter_web/pages/public/learn/roundtrip/{quicksearch.adoc → lunr_search.adoc} +23 -18
  254. data/lib/starter_web/pages/public/learn/roundtrip/{bs_modals_extentions.adoc → modal_extentions.adoc} +23 -24
  255. data/lib/starter_web/pages/public/learn/roundtrip/present_images.adoc +12 -11
  256. data/lib/starter_web/pages/public/learn/roundtrip/present_videos.adoc +14 -10
  257. data/lib/starter_web/pages/public/learn/roundtrip/{responsive_tables_extensions.adoc → responsive_tables.adoc} +16 -13
  258. data/lib/starter_web/pages/public/learn/roundtrip/{typography.adoc → template_typography.adoc} +8 -7
  259. data/lib/starter_web/pages/public/learn/where_to_go.adoc +12 -29
  260. data/lib/starter_web/pages/public/legal/de/100_copyright.adoc +1 -1
  261. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +1 -1
  262. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +1 -1
  263. data/lib/starter_web/pages/public/legal/de/400_comment_policy.adoc +3 -1
  264. data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +7 -5
  265. data/lib/starter_web/pages/public/legal/en/200_impress.adoc +7 -5
  266. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +7 -5
  267. data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +9 -5
  268. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +11 -10
  269. data/lib/starter_web/pages/public/plans/plans.adoc +7 -4
  270. data/lib/starter_web/pages/public/previewer/preview_bootstrap_theme.adoc +15 -38
  271. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  272. data/lib/starter_web/utilsrv/package.json +1 -1
  273. metadata +172 -134
  274. data/_includes/themes/j1/blocks/footer/generator.html +0 -151
  275. data/_includes/themes/j1/layouts/content_generator_app.html +0 -32
  276. data/_includes/themes/j1/layouts/content_generator_article_navigator.html +0 -176
  277. data/_includes/themes/j1/layouts/content_generator_blog_archive.html +0 -251
  278. data/_layouts/app.html +0 -65
  279. data/_layouts/article_navigator.html +0 -66
  280. data/_layouts/blog_archive.html +0 -64
  281. data/assets/data/article_navigator/index.html +0 -51
  282. data/lib/starter_web/_data/layouts/app.yml +0 -172
  283. data/lib/starter_web/_data/layouts/article_navigator.yml +0 -173
  284. data/lib/starter_web/_data/layouts/blog_archive.yml +0 -191
  285. data/lib/starter_web/_includes/custom/static/custom_teaser.html +0 -64
  286. data/lib/starter_web/assets/images/banner/scalable/readme +0 -0
  287. data/lib/starter_web/assets/images/collections/blog/featured/dynamic-web-access.jpg +0 -0
  288. data/lib/starter_web/assets/images/collections/blog/featured/jamstack-generators-2.jpg +0 -0
  289. data/lib/starter_web/assets/images/collections/blog/featured/markus-spiske-2.jpg +0 -0
  290. data/lib/starter_web/assets/images/collections/blog/featured/static-web-access.jpg +0 -0
  291. data/lib/starter_web/assets/images/collections/blog/featured/welcome-to-j1-template.jpg +0 -0
  292. data/lib/starter_web/assets/images/collections/blog/featured/what-is-a-baseurl.jpg +0 -0
  293. data/lib/starter_web/assets/images/collections/blog/series/j1_using_docker/j1_docker_banner.1280x500.png +0 -0
  294. data/lib/starter_web/assets/images/collections/blog/series/j1_using_docker/kinematic_alpha.1280x600.png +0 -0
  295. data/lib/starter_web/assets/images/collections/blog/series/j1_using_docker/kinematic_j1.1280x300.png +0 -0
  296. data/lib/starter_web/assets/images/collections/blog/series/j1_using_docker/windows_docker_banner.1280x500.png +0 -0
  297. data/lib/starter_web/assets/images/modules/attics/1920x1280/braden-collum.jpg +0 -0
  298. data/lib/starter_web/assets/images/modules/attics/1920x1280/firmbee-com.jpg +0 -0
  299. data/lib/starter_web/assets/images/modules/attics/1920x1280/moritz-kindler.jpg +0 -0
  300. data/lib/starter_web/assets/images/modules/attics/1920x1280/spacex.jpg +0 -0
  301. data/lib/starter_web/assets/videos/gallery/dailymotion/meditation.jpg +0 -0
  302. data/lib/starter_web/assets/videos/gallery/dailymotion/pilates.jpg +0 -0
  303. data/lib/starter_web/assets/videos/gallery/html5/video1.mp4 +0 -0
  304. data/lib/starter_web/assets/videos/gallery/html5/video2.mp4 +0 -0
  305. data/lib/starter_web/assets/videos/gallery/kick-it-old-school-poster.jpg +0 -0
  306. data/lib/starter_web/assets/videos/gallery/nye-party-shop-poster.jpg +0 -0
  307. data/lib/starter_web/assets/videos/gallery/stay-colorful-poster.jpg +0 -0
  308. data/lib/starter_web/assets/videos/gallery/video1-poster.jpg +0 -0
  309. data/lib/starter_web/assets/videos/gallery/video1-thumb.jpg +0 -0
  310. data/lib/starter_web/assets/videos/gallery/video2-poster.jpg +0 -0
  311. data/lib/starter_web/assets/videos/gallery/video2-thumb.jpg +0 -0
  312. data/lib/starter_web/assets/videos/gallery/video_adele-poster.jpg +0 -0
  313. data/lib/starter_web/assets/videos/gallery/video_gaga-poster.jpg +0 -0
  314. data/lib/starter_web/assets/videos/gallery/video_gwen-poster.jpg +0 -0
  315. data/lib/starter_web/assets/videos/gallery/video_michelle-poster.jpg +0 -0
  316. data/lib/starter_web/assets/videos/gallery/vk/hai.jpg +0 -0
  317. data/lib/starter_web/assets/videos/gallery/vk/otter.jpg +0 -0
  318. data/lib/starter_web/assets/videos/gallery/voice_kids_de_2021/battle.jpg +0 -0
  319. data/lib/starter_web/assets/videos/gallery/voice_kids_de_2021/ben.jpg +0 -0
  320. data/lib/starter_web/assets/videos/gallery/voice_kids_de_2021/constance.jpg +0 -0
  321. data/lib/starter_web/assets/videos/gallery/voice_kids_de_2021/elisa.jpg +0 -0
  322. data/lib/starter_web/assets/videos/headers/present_videos/still/underground-broadway.jpg +0 -0
  323. data/lib/starter_web/assets/videos/headers/present_videos/underground-broadway.mp4 +0 -0
  324. data/lib/starter_web/assets/videos/tiktok/einhorn.jpg +0 -0
  325. data/lib/starter_web/assets/videos/tiktok/waluschka.jpg +0 -0
  326. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-circular-times-table.adoc +0 -142
  327. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-common-used-widgets.adoc +0 -232
  328. data/lib/starter_web/pages/public/jupyter/examples/distributed/j1-odes-in-python.adoc +0 -115
  329. data/lib/starter_web/pages/public/jupyter/examples/localized/j1_climate-change-forecast.adoc +0 -109
  330. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_circular_times_table.ipynb +0 -12382
  331. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_climate_change_forecast.ipynb +0 -1058
  332. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_docs_example_dynamic.ipynb +0 -14478
  333. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_interactive_widgets.ipynb +0 -442
  334. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets.ipynb +0 -523
  335. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets_bar_chart.ipynb +0 -89
  336. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets_hist_chart.ipynb +0 -87
  337. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets_line_chart.ipynb +0 -90
  338. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets_question_multiple_choice.ipynb +0 -64
  339. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets_question_short_answer.ipynb +0 -122
  340. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets_scatter_chart.ipynb +0 -89
  341. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_nbi_widgets_scatter_drag_chart.ipynb +0 -87
  342. data/lib/starter_web/pages/public/jupyter/notebooks/j1/j1_odes_in_python.ipynb +0 -15227
  343. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_circular_times_table.html +0 -747
  344. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_climate_change_forecast.html +0 -1250
  345. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_docs_example_dynamic.html +0 -186
  346. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_interactive_widgets.html +0 -512
  347. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets.html +0 -629
  348. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_bar_chart.html +0 -95
  349. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_hist_chart.html +0 -93
  350. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_line_chart.html +0 -96
  351. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_question_multiple_choice.html +0 -70
  352. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_question_short_answer.html +0 -156
  353. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_chart.html +0 -95
  354. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_nbi_widgets_scatter_drag_chart.html +0 -93
  355. data/lib/starter_web/pages/public/jupyter/notebooks/textbooks/j1_odes_in_python.html +0 -955
  356. data/lib/starter_web/pages/public/jupyter/where_to_go.adoc +0 -232
  357. data/lib/starter_web/pages/public/learn/roundtrip/_includes/google-ad.js +0 -130
  358. data/lib/starter_web/pages/public/learn/roundtrip/themes.adoc +0 -253
  359. data/lib/starter_web/pages/public/se/se-fake.adoc +0 -48
@@ -1,232 +0,0 @@
1
- ---
2
- title: Where to go
3
- tagline: presenting data analysis projects
4
- date: 2022-03-28 00:00:00
5
- description: >
6
- The package nbinteract aims to enable authors and educators to create and
7
- share interactive web pages easily. Interactive explanations of concepts are
8
- useful for communicating and explaining tricky concepts.
9
- keywords: >
10
- opensource, free, load, download, start, starter, example,
11
- high, easy, use, secure, encrypt, standard, popular,
12
- generate, create, learn, distribute, publish, deploy,
13
- beginner, advanced, expert, student, learner, educator,
14
- writer, reader, visitor,
15
- framework, toolkit, integration, extension, module, api,
16
- dynamic, static, generator, client, server, internet, local, localhost,
17
- page, web, website, webdesign, material, design, responsive,
18
- javascript, nodejs, ruby, windows, linux, osx, mac, os,
19
- http, https, html, html5, css, scss, style,
20
- browser, firefox, chrome, edge, opera, safari,
21
- configuration, generator, navigation, menu, dropdown, fab, action, button,
22
- application, interface, provider, api, repository,
23
- cookie, language, translation, gdpr, dsgvo, privacy,
24
- asciidoc, aciidoctor, bootstrap, jekyll, liquid,
25
- hyvor, disqus, git, github, netlify, heroku, apple, microsoft,
26
- provider, service, internet, support,
27
- google, analytics, advertising, search, console, silverlight, score,
28
- j1, nbi, j1-nbinteract, nbinteract, template, integration,
29
- python, jupyter, notebook, textbook, api, app,
30
- binder, binderhub, jupyterhub
31
-
32
- categories: [ Software, Python ]
33
- tags: [ Binder, Jupyter, Notebooks ]
34
-
35
- scrollbar: false
36
- fab_menu_id: page_ctrl_simple
37
- personalization: true
38
-
39
- permalink: /pages/public/jupyter/where-to-go/
40
- regenerate: false
41
-
42
- resources: [ animate, clipboard, rouge ]
43
- resource_options:
44
- - attic:
45
- opacity: 0.3
46
- slides:
47
- - url: /assets/images/modules/attics/tldr-1920x800.jpg
48
- alt: Photo by Alexander Redl on Unsplash
49
- badge:
50
- type: unsplash
51
- author: Alexander Redl
52
- href: https://unsplash.com/@alexanderredl
53
-
54
- # slides:
55
- # - url: /assets/images/modules/attics/yellow-cactus-1920x1280.jpg
56
- # alt: Photo by Yellow Cactus on Unsplash
57
- # badge:
58
- # type: unsplash
59
- # author: Yellow Cactus
60
- # href: https://unsplash.com/@yellowcactus
61
- ---
62
-
63
- // Page Initializer
64
- // =============================================================================
65
- // Enable the Liquid Preprocessor
66
- :page-liquid:
67
-
68
- // Set (local) page attributes here
69
- // -----------------------------------------------------------------------------
70
- // :page--attr: <attr-value>
71
- //
72
- :binder-badges-enabled: false
73
-
74
- :url-j1-notebook--times-tables: /pages/public/jupyter/examples/distributed/j1-circular-times-table/
75
- :url-j1-notebook--climate-change: /pages/public/jupyter/examples/localized/climate-change-forecast/
76
-
77
- // Load Liquid procedures
78
- // -----------------------------------------------------------------------------
79
- {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
80
-
81
- // Load page attributes
82
- // -----------------------------------------------------------------------------
83
- {% include {{load_attributes}} scope="global" %}
84
-
85
-
86
- // Page content
87
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
88
- // image:/assets/images/badges/myBinder.png[Binder, link="https://mybinder.org/", {browser-window--new}]
89
- // image:/assets/images/badges/docsBinder.png[Binder, link="https://mybinder.readthedocs.io/en/latest/", {browser-window--new}]
90
- // See: https://towardsdatascience.com/ordinal-differential-equation-ode-in-python-8dc1de21323b
91
-
92
- ifeval::[{binder-badges-enabled} == true]
93
- image:https://mybinder.org/badge_logo.svg[Binder, link="{url-binder-app-launch--lab}", {browser-window--new}]
94
- endif::[]
95
-
96
- Jupyter Notebook (JN) is an open source web application based on the programming
97
- language _Python_ that allows data scientists to create and share documents
98
- that include explanatory text, live code, equations, and other multimedia
99
- resources like images or videos.
100
-
101
- To understand the technical terms of Jupyter (JN) better, below you find a
102
- brief description the base components.
103
-
104
- Jupyter Notebook App::
105
- The Jupyter Notebook *App* is a server-client application that allows editing
106
- and running notebook documents via a web browser. The Notebook App can be
107
- executed on a local desktop requiring no internet access or can be installed
108
- on a remote server and accessed through the internet in a cloud.
109
-
110
- Notebook documents::
111
- Notebook documents (or *notebooks* for short) are documents created by the
112
- Notebook App, and both computer code (e.g., Python) and rich text may contain
113
- elements (paragraphs, equations, figures, links, etc.). Notebook documents are
114
- human-readable documents, alongside code descriptions and results like figures,
115
- tables, etc.
116
-
117
- == The J1 Module NBI
118
-
119
- The _Python_ package `nbinteract` allows authors to convert Jupyter Notebooks
120
- into standalone HTML text pages: the *Textbooks*. The containing elements can
121
- include arbitrary Python code to generate output as well as Python libraries
122
- like _NumPy_ and _Pandas_ and libraries that create data visualisation like
123
- _Matplotlib_, _Plotly_, _Altair_ or _Bokeh_.
124
-
125
- *Anyone* with a modern web browser can use the resulting web pages even if
126
- *no* Python or Jupyter installed on their computer. To make this possible,
127
- the J1 module *NBI* uses the freely available cloud service _Binder_.
128
-
129
- The built-in Starter Web of the template comes with a suitable NBI
130
- configuration and notebook documents for testing. You can find examples of
131
- pages that contain interactive textbooks under the menu `Lern` underneath
132
- the submenu `Experimental|Distributed Notebooks` or
133
- `Experimental|Localized Notebooks`.
134
-
135
- === Notebooks vs. Textbooks
136
-
137
- Jupyter Notebook documents with the extension `.ipynb` are *data* files in
138
- the JSON format and can only be run using the *App* of Jupyter Notebook. On
139
- the other hand, Textbooks are HTML exports of Jupyter Notebooks with the
140
- extension `.html` to be viewed in a web browser without *no* the need using
141
- a locally installed Jupyter App to be displayed.
142
-
143
- For integrating textbooks in webpages, the notebooks with the extension
144
- `.ipynb` are to be *exported* to HTML (text) files using the Python program
145
- `nbinteract`. Textbooks that have already been exported can be found for the
146
- *Starter Web* in the folder `~/pages/public/jupyter/notebooks` in the
147
- subfolder `textbooks`.
148
-
149
- === Distributed vs. Localized Textbooks
150
-
151
- The Python program `nbinteract` can export all types of containing elements of
152
- a Jupyter Notebook including embedded Javascript code that all
153
- modern web browsers can run. Important components of Jupyter notebooks are data
154
- visualizations to make sense of the data presented to the readers. Another
155
- important feature of Notebooks is *interactivity* which allows to change or
156
- select specific data elements to vary the output of data visualizations.
157
-
158
- The most flexible solution for interactive Notebooks are elements based on
159
- native Python code. To run the Python code as part of an HTML page, a
160
- computation engine is required for its execution. To run arbitrary Python code
161
- for generating output, the services at _Binder_ come into the game. The J1
162
- module *NBI* process Textbooks that contain Python code by connecting a running
163
- Jupyter Notebook instance (JN) in the cloud.
164
-
165
- Many modern visualization libraries used for Jupyter Notebooks are based on
166
- pure Javascript code that web browsers can process without the need of an
167
- additional (external) computation engine.
168
-
169
- Distributed Textbooks::
170
- Distributed Textbooks use embedded Python code that requires an additional
171
- computation engine. The module NBI of J1 Template connects via the _Binder_
172
- service for execution to process and display those notebooks. This remote
173
- execution allows *all* sorts of data visualization and interactivity Jupyter
174
- Notebooks can offer.
175
-
176
- Localized Textbooks::
177
- If the module NBI detects localized Textbooks, the module interface does
178
- *not* execute embedded Python code but displays those elements as *static*
179
- text sections. Data visualization elements are embedded as images or,
180
- depending on the visualization library used, as Javascript code that can
181
- be executed natively by a web browser. Available data visualization and
182
- interactivity depend on the visualization libraries used.
183
-
184
-
185
- == Where to go
186
-
187
- To get an impression of what exported Textbooks by the NBI module are and what
188
- can be achieved for static websites embedding and presenting Jupyter Notebooks
189
- the reader should first visit the already prepared Textbooks.
190
-
191
- Distributed Notebooks::
192
- Distributed Notebooks demonstrate the full power of the NBI module. An
193
- interesting example may be the interactive visualization of well-known
194
- *Time Tables*. This notebook is fun but shows some magic of mathematics.
195
-
196
- You find this fun notebook link:{url-j1-notebook--times-tables}[from here, {browser-window--new}].
197
-
198
- Localized Notebooks::
199
- An example of a simple localized notebook is shown by
200
- link:{url-j1-notebook--climate-change}[Climate Change Forecast, {browser-window--new}].
201
- The HTML export contains all text, code and graphical elements but is completely
202
- static, because no interactive elements are provided.
203
-
204
- // For a Starter Web, Altair and Bokeh examples are available only from
205
- // remote (jekyll.one)
206
- //
207
- Localized Notebooks are in general limited in terms of interactivity and data
208
- visualization but can achieve *similar* results if a powerful Javascript-based
209
- visualization the library is used. Excellent examples of such a powerful
210
- Javascript-based visualization libraries are demonstrated with the tour through
211
- the graphic elements of:
212
-
213
- * link:{url-j1-altair-visualizations--remote}[Altair, {browser-window--new}]
214
- * link:{url-j1-bokeh-visualizations--remote}[Bokeh, {browser-window--new}]
215
-
216
- // For a Starter Web, NBI Docs and NBI APIs are available only from
217
- // remote (jekyll.one)
218
- //
219
- NBI Documentation::
220
- Find more about how the NBI module works and what resources are used in
221
- this section. More about the module configuration and how it is used for static
222
- web pages can be found in this section:
223
- link:{url-j1-nbi-module-docs--remote}[NBI Docs, {browser-window--new}].
224
-
225
- NBI APIs::
226
- More about the backgrounds of the NBI module and what are APIs are used
227
- under the hood can be found in this section. As the _Binder_ service is
228
- intensively used for distributed notebooks, more about these background service
229
- is provided at the
230
- link:{url-j1-nbi-apis-binder--remote}[Binder API, {browser-window--new}].
231
-
232
- Having fun exploring the world of *Data Science* and *Analysis*.
@@ -1,130 +0,0 @@
1
- <!-- Google Ad (Displayanzeige): horizontal-1 -->
2
- <ins class="adsbygoogle mb-5"
3
- style="display:block"
4
- data-ad-client="ca-pub-3885670015316130"
5
- data-ad-slot="5128488466"
6
- data-ad-format="auto"
7
- data-adtest="on"
8
- data-full-width-responsive="true">
9
- </ins>
10
-
11
- <!-- Google Ad (Displayanzeige): horizontal-2 -->
12
- <ins class="adsbygoogle"
13
- style="display:block"
14
- data-ad-client="ca-pub-3885670015316130"
15
- data-ad-slot="7284712660"
16
- data-ad-format="auto"
17
- data-full-width-responsive="true"></ins>
18
- <script>
19
- (adsbygoogle = window.adsbygoogle || []).push({});
20
- </script>
21
-
22
- // manage uncaught execeptions
23
- // ---------------------------------------------------------------------
24
- // window.onerror = function (msg, url, line) {
25
- // alert("Message : " + msg );
26
- // alert("url : " + url );
27
- // alert("Line number : " + line );
28
- // }
29
-
30
- // From www.freeformatter.com
31
- // -----------------------------------------------------------------------------
32
- <script type="text/javascript">
33
- window.googletag = window.googletag || {};
34
- window.googletag.cmd = window.googletag.cmd || [];
35
- window.googletag.cmd.push(function() {
36
- window.googletag.pubads().enableAsyncRendering();
37
- window.googletag.pubads().disableInitialLoad();
38
- });
39
- (adsbygoogle=window.adsbygoogle||[]).pauseAdRequests=1;
40
-
41
- __tcfapi("addEventListener", 2, function(tcData, success) {
42
- if (success && tcData.unicLoad === true) {
43
- if(!window._initAds) {
44
- window._initAds = true;
45
- var script = document.createElement('script');
46
- script.async = true;
47
- script.setAttribute('data-ad-client', 'ca-pub-2485708030241382');
48
- script.src = 'https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js';
49
- document.head.appendChild(script);
50
- }
51
- }
52
- });
53
- </script>
54
-
55
- ++++
56
- <!-- insert Google Ad (Displayanzeige): horizontal-2, adSlot="5128488466" -->
57
- <div class="5128488466 mb-5">
58
- <ins class="adsbygoogle"
59
- style="display: block;"
60
- data-ad-client="ca-pub-3885670015316130"
61
- data-ad-slot="5128488466"
62
- data-ad-format="auto"
63
- data-adtest="on"
64
- data-full-width-responsive="true">
65
- </ins>
66
- </div>
67
- ++++
68
-
69
- <!-- insert Google Ad (In-Article-Anzeige): in-article-1, adSlot="7522184684" -->
70
- <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-3885670015316130"
71
- crossorigin="anonymous"></script>
72
- <ins class="adsbygoogle"
73
- style="display:block; text-align:center;"
74
- data-ad-layout="in-article"
75
- data-ad-format="fluid"
76
- data-ad-client="ca-pub-3885670015316130"
77
- data-ad-slot="7522184684"></ins>
78
- <script>
79
- (adsbygoogle = window.adsbygoogle || []).push({});
80
- </script>
81
-
82
-
83
-
84
- ++++
85
- <script>
86
-
87
- $(document).ready(function() {
88
- var logger = log4javascript.getLogger('j1.google.ads');
89
- var autoHideOnUnfilled = false;
90
-
91
- var dependencies_met_page_ready = setInterval (function (options) {
92
- if ( j1.getState() === 'finished' ) {
93
-
94
- // monitor for state changes on the ad
95
- // ---------------------------------------------------------------------
96
- $('.adsbygoogle').attrchange({
97
- trackValues: true,
98
- callback: function (event) {
99
- if (event.newValue === 'unfilled') {
100
- var elm = event.target.dataset;
101
- if (elm.adClient) {
102
- logger.warn('\n' + 'initialized ad detected as: ' + event.newValue);
103
- if (autoHideOnUnfilled) {
104
- logger.info('\n' + ' hide ad for slot: ' + elm.adSlot);
105
- $('.' + elm.adSlot ).hide();
106
- }
107
- }
108
- }
109
- }
110
- });
111
-
112
- // manage uncaught execeptions
113
- // ---------------------------------------------------------------------
114
- // window.onerror = function (msg, url, line) {
115
- // alert("Message : " + msg );
116
- // alert("url : " + url );
117
- // alert("Line number : " + line );
118
- // }
119
-
120
- logger.info('\n' + 'initialize Google Ad on slot: ' + '5128488466');
121
- (adsbygoogle = window.adsbygoogle || []).push({});
122
-
123
- clearInterval(dependencies_met_page_ready);
124
- }
125
- });
126
-
127
- });
128
-
129
- </script>
130
- ++++
@@ -1,253 +0,0 @@
1
- ---
2
- title: Roundtrip
3
- tagline: themes
4
- date: 2020-11-10 00:00:00
5
- description: >
6
- The themes feature for J1 is in an experimental
7
- state for the template system. Anyway, it makes
8
- sense to present what is possible using different
9
- versions of Bootstrap's CSS styles for a website.
10
-
11
- categories: [ Roundtrip ]
12
- tags: [ Introduction, Module, Themes ]
13
-
14
- scrollbar: false
15
- fab_menu_id: page_ctrl
16
-
17
- permalink: /pages/public/learn/roundtrip/themes/
18
- regenerate: false
19
-
20
- resources: [ animate, rouge, clipboard, lightbox ]
21
- resource_options:
22
-
23
- - attic:
24
-
25
- slides:
26
-
27
- - url: /assets/images/pages/roundtrip/themes-1920x1280-bw.jpg
28
- alt: Photo by Clem Onojeghuo on Unsplash
29
- badge:
30
- type: unsplash
31
- author: Clem Onojeghuo
32
- href: https://unsplash.com/@clemono
33
- ---
34
-
35
- // Page Initializer
36
- // =============================================================================
37
- // Enable the Liquid Preprocessor
38
- :page-liquid:
39
-
40
- // Set (local) page attributes here
41
- // -----------------------------------------------------------------------------
42
- // :page--attr: <attr-value>
43
- :images-dir: {imagesdir}/pages/roundtrip/100_present_images
44
-
45
- // Load Liquid procedures
46
- // -----------------------------------------------------------------------------
47
- {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
48
-
49
- // Load page attributes
50
- // -----------------------------------------------------------------------------
51
- {% include {{load_attributes}} scope="all" %}
52
-
53
- // Page content
54
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
55
-
56
- // Include sub-documents (if any)
57
- // -----------------------------------------------------------------------------
58
- [role="dropcap"]
59
- Themes for the template system J1 are based on the free and open-source CSS
60
- front-end framework {url-bs--home}[Bootstrap, {browser-window--new}] of
61
- version V5. Bootstrap is an HTML, CSS & JS Library that focuses on simplifying
62
- the development of modern web pages. The primary purpose of applying the
63
- framework to J1 is to provide a general standard for colors, sizes, fonts,
64
- and the overall layout of a J1-based site. Bootstrap provides basic style
65
- definitions for all commonly used HTML elements.
66
-
67
- Using Bootstrap base style only results in a uniform appearance for the
68
- content in terms of the overall layout, text, tables, and form elements
69
- across all modern web browsers available on the market. In addition,
70
- developers can take advantage of CSS classes defined in Bootstrap to
71
- customize content individually.
72
-
73
- The themes feature for J1 is in an experimental state for the template
74
- system. Anyway, it makes sense to present what is possible using different
75
- versions of Bootstrap's CSS styles for a website.
76
-
77
- == The Themes menu
78
-
79
- Themes step in the framework to further adjust the website's appearance
80
- based on the core CSS rules and definitions of Bootstrap. Themes do not
81
- change the framework's functionality but modify rule-based, e.g., the
82
- color scheme, fonts, sizes, or the appearance of more complex elements like
83
- forms or tables. Additionally, a theme may add additional components but in
84
- the *sense* of Bootstrap's framework rules and philosophy.
85
-
86
- It is expected that many people will change the template for their needs. To
87
- create unique websites. Fundamental to do this is are CSS styles
88
- defined by Bootstrap.
89
-
90
- Modifying the CSS styles of link:{url-bootstrap--home}[Bootstrap, {browser-window--new}]
91
- is not rocket science. But, to be honest, some knowledge is needed for
92
- link:{url-w3org--css-spec}[the CSS technology] to do so. We encourage you to spend
93
- some time first on learning CSS. To learn what is the
94
- link:{url-w3schools--css-tutorial}[design base, {browser-window--new}] of each and
95
- every website.
96
-
97
- .Themes menu (Bootswatch)
98
- lightbox::images--themes-menu[ 1024, {data-images--themes-menu} ]
99
-
100
- Thanks to the people at link:{url-bootswatch--home}[Bootswatch, {browser-window--new}],
101
- a great set of already prepared Bootstrap stylesheets in various designs are
102
- available on their website. There is no need to start from scratch, re-define all
103
- the Bootstrap variables, and rebuild the framework files to create a new
104
- theme. Many different styles are available. What is already available at
105
- Bootswatch is at least a good base for your modifications; your unique design.
106
-
107
- Besides the bunch of different stylesheets at Bootswatch, an
108
- link:{url-bootswatch--api}[Integration API, {browser-window--new}] is available
109
- that helps a lot to integrate available designs into an existing site. This API
110
- is the base to integrate selectable Bootswatch stylesheets into the J1 Template
111
- navigation system for easy use.
112
-
113
- === Apply a theme
114
-
115
- The base for designing pages using the J1 Template is the theme Uno, a modern
116
- light theme used for many types of websites. And what we mentioned
117
- already, web design is not: one size fits all. The theme Uno can be seen as
118
- a good base, a starting point. Combining Uno and a different theme may be a fast
119
- solution for your site!?
120
-
121
- You can find all available themes and stylesheets on your pages
122
- from the menu Themes. You're invited to check how a page is changing for
123
- its design if other stylesheets, other ideas of web design are used.
124
-
125
- NOTE: Changing BS-based styles is one thing. Changing from one theme to the
126
- next at runtime is a bit more challenging. For the first version of the J1
127
- Template, many styles are automatically changed for J1 specific components,
128
- but not all of them for now.
129
-
130
- Select a theme from this menu, and a new BS-based stylesheet is
131
- automatically applied to your pages.
132
-
133
- == Code Highlighter Rouge
134
-
135
- _Rouge_ is a pure Ruby and themeable syntax highlighter. It can highlight
136
- 100+ different languages and output HTML or ANSI 256-color text. Find all
137
- available themes and examples for several languages of how
138
- highlighting works using _Rouge_.
139
-
140
- For the default theme `Uno` of J1 Template, the following _Rouge_ themes
141
- are used:
142
-
143
- * light: `igorpro`
144
- * dark: `monokai.sublime`
145
-
146
- NOTE: The default themes used for the J1 Template can be configured with the
147
- global template config file `~/_data/j1_config.yml`.
148
-
149
-
150
- === Apply a theme
151
-
152
- Make a selection of a theme below to preview.
153
-
154
- ++++
155
- <div class="btn-group">
156
- <!-- See: https://stackoverflow.com/questions/47242702/force-bootstrap-dropdown-menu-to-always-display-at-the-bottom-and-allow-it-go-of -->
157
- <!-- NOTE: control the behaviour of popper.js for positioning -->
158
- <!-- NOTE: set attribute data-flip="false" to open the SELECT list at the BOTTOM of the BUTTON -->
159
- <button class="btn btn-primary btn-flex btn-lg dropdown-toggle" data-flip="false" type="button" data-bs-toggle="dropdown" data-bs-target="#navbarDropdown" aria-haspopup="true" aria-expanded="false">
160
- Select Theme<span class="caret"></span>
161
- </button>
162
- <ul class="dropdown-menu scrollable-menu" role="menu">
163
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16</a></li>
164
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.dark')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.dark</a></li>
165
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.light')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.light</a></li>
166
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.monokai')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.monokai</a></li>
167
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.monokai.dark')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.monokai.dark</a></li>
168
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.monokai.light')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.monokai.light</a></li>
169
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.solarized')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.solarized</a></li>
170
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.solarized.dark')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.solarized.dark</a></li>
171
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('base16.solarized.light')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>base16.solarized.light</a></li>
172
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('colorful')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>colorful</a></li>
173
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('github')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>github</a></li>
174
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('gruvbox')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>gruvbox</a></li>
175
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('gruvbox.light')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>gruvbox.light</a></li>
176
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('igorpro')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>igorpro</a></li>
177
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('molokai')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>molokai</a></li>
178
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('monokai')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>monokai</a></li>
179
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('monokai.sublime')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>monokai.sublime</a></li>
180
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('pastie')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>pastie</a></li>
181
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('thankful_eyes')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>thankful_eyes</a></li>
182
- <li><a class="dropdown-item" onclick="j1.adapter.rouge.reaplyStyles('tulip')"> <i class="mdi mdi-view-quilt mdi-18px mr-2" style="color: #9E9E9E"></i>tulip</a></li>
183
- </ul>
184
- </div>
185
- <div id="selected" class="mt-1 mb-3"></div>
186
- ++++
187
-
188
- === Highlight Liquid code
189
-
190
- {% raw %}
191
- [source, liquid]
192
- ----
193
- Hello {{ 'now' | date: "%Y %h" }}
194
-
195
- {% comment %} if item.quantity is 4... {% endcomment %}
196
- {% for i in (1..item.quantity) %}
197
- {{ i }}
198
- {% endfor %}
199
- ----
200
- {% endraw %}
201
-
202
- === Highlight Javascript code
203
-
204
- [source, javascript]
205
- ----
206
- // helper functions
207
- //
208
- function styleSheetLoaded(styleSheet) {
209
- var sheets = document.styleSheets,
210
- stylesheet = sheets[(sheets.length - 1)];
211
-
212
- // find CSS file 'styleSheetName' in document
213
- for(var i in document.styleSheets) {
214
- if(sheets[i].href && sheets[i].href.indexOf(styleSheet) > -1) {
215
- return true;;
216
- }
217
- }
218
- }
219
- ----
220
-
221
- === Highlight Ruby code
222
-
223
- [source, ruby]
224
- ----
225
- require 'asciidoctor/extensions' unless RUBY_ENGINE == 'opal'
226
- include Asciidoctor <1>
227
-
228
- Asciidoctor::Extensions.register do
229
- class J1BlockMacro < Extensions::BlockMacroProcessor
230
- use_dsl
231
- named :banner
232
- name_positional_attributes 'role'
233
-
234
- def process parent, target, attrs
235
- html = %(<div id="#{target}" class="#{attrs['role']}"></div>)
236
- create_pass_block parent, html, attrs, subs: nil
237
- end
238
- end
239
- block_macro J1BlockMacro
240
- end
241
- ----
242
- <1> don't miss to load the Asciidoctor ruby
243
-
244
-
245
- == What next
246
-
247
- Using a theme, the character of a website can change a lot. If you don't want
248
- to support multiple themes with your site, a theme is a good base to create
249
- your theme, anyway.
250
-
251
- An important feature for larger webs is searching. The visitors should be able
252
- to search your site to find pages and posts they are interested in. Check what
253
- is searching a J1 website all about at link:{url-roundtrip--quicksearch}[Quicksearch].
@@ -1,48 +0,0 @@
1
- ---
2
- title: SE Fake
3
- tagline: page loaded by selenium
4
- date: 2022-03-28 00:00:00
5
-
6
- categories: [ Software, Python ]
7
- tags: [ Binder, Jupyter, Notebooks ]
8
-
9
- scrollbar: false
10
- permalink: /pages/public/se-fake/
11
-
12
- resources: [ nbinteract ]
13
- resource_options:
14
-
15
- - attic:
16
-
17
- slides:
18
-
19
- - url: /assets/images/pages/nbinteract/mandelbrot-menge-1920x1200.jpg
20
- alt: mandelbrot-menge-1920x1200.jpg
21
- ---
22
-
23
- // Page Initializer
24
- // =============================================================================
25
- // Enable the Liquid Preprocessor
26
- :page-liquid:
27
-
28
- // Set (local) page attributes here
29
- // -----------------------------------------------------------------------------
30
- // :page--attr: <attr-value>
31
-
32
- // Load Liquid procedures
33
- // -----------------------------------------------------------------------------
34
- {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
35
-
36
- // Load page attributes
37
- // -----------------------------------------------------------------------------
38
- {% include {{load_attributes}} scope="global" %}
39
-
40
-
41
- // Page content
42
- // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
43
-
44
- This page is only loaded by the _Selenium_ command-line runner. This makes
45
- sure at Binder, that the created container *service* leaves up and running,
46
- and the container *image* are not deleted because in inactivity.
47
-
48
- textbook::j1_circular_times_table[]