j1-template 2020.0.18 → 2020.0.24

Sign up to get free protection for your applications and to get access to all the features.
Files changed (523) hide show
  1. checksums.yaml +4 -4
  2. data/_includes/themes/j1/blocks/ads/ad.html +2 -2
  3. data/_includes/themes/j1/blocks/footer/boxes/about_box.proc +2 -2
  4. data/_includes/themes/j1/blocks/footer/boxes/links_box.proc +4 -4
  5. data/_includes/themes/j1/blocks/footer/boxes/news_box.proc +2 -2
  6. data/_includes/themes/j1/blocks/footer/generator.html +2 -2
  7. data/_includes/themes/j1/layouts/content_generator_blog_archive.html +21 -18
  8. data/_includes/themes/j1/layouts/content_generator_collection.html +4 -4
  9. data/_includes/themes/j1/layouts/content_generator_page.html +12 -60
  10. data/_includes/themes/j1/layouts/content_generator_post.html +64 -162
  11. data/_includes/themes/j1/layouts/layout_metadata_generator.html +2 -2
  12. data/_includes/themes/j1/modules/connectors/ad/google-adsense.html +15 -1
  13. data/_includes/themes/j1/modules/connectors/ads +2 -2
  14. data/_includes/themes/j1/modules/connectors/analytic/google-analytics.html +2 -4
  15. data/_includes/themes/j1/modules/connectors/analytics +2 -2
  16. data/_includes/themes/j1/modules/connectors/comment/disqus.html +38 -25
  17. data/_includes/themes/j1/modules/connectors/comments +2 -2
  18. data/_includes/themes/j1/modules/connectors/translator +2 -2
  19. data/_includes/themes/j1/modules/navigator/generator.html +17 -8
  20. data/_includes/themes/j1/modules/navigator/procedures/topsearch.proc +36 -26
  21. data/_includes/themes/j1/procedures/global/attributes_loader.proc +117 -0
  22. data/_includes/themes/j1/procedures/global/create_bs_button.proc +11 -10
  23. data/_includes/themes/j1/procedures/global/create_word_cloud.proc +14 -12
  24. data/_includes/themes/j1/procedures/global/get_documents_dir.proc +1 -1
  25. data/_includes/themes/j1/procedures/global/set_env_entry_document.proc +3 -3
  26. data/_includes/themes/j1/procedures/global/setup.proc +9 -9
  27. data/_includes/themes/j1/procedures/layouts/content_writer.proc +1 -2
  28. data/_includes/themes/j1/procedures/layouts/module_writer.proc +1 -1
  29. data/_includes/themes/j1/procedures/posts/collate_calendar.proc +1 -1
  30. data/_includes/themes/j1/procedures/posts/collate_list.proc +1 -1
  31. data/_includes/themes/j1/procedures/posts/collate_timeline.proc +38 -39
  32. data/_includes/themes/j1/procedures/posts/create_series_header.proc +9 -5
  33. data/_layouts/blog_archive.html +2 -1
  34. data/_layouts/collection.html +1 -1
  35. data/_layouts/default.html +3 -3
  36. data/_layouts/home.html +2 -2
  37. data/_layouts/page.html +1 -1
  38. data/_layouts/post.html +1 -1
  39. data/apps/public/cc/cc.yml +3 -3
  40. data/assets/data/authclient.html +7 -7
  41. data/assets/data/banner.html +31 -26
  42. data/assets/data/carousel.json +1 -1
  43. data/assets/data/cookiebar.html +21 -17
  44. data/assets/data/fam.html +124 -0
  45. data/assets/data/footer.html +1 -1
  46. data/assets/data/galleries.json +1 -1
  47. data/assets/data/gallery_customizer.html +2 -2
  48. data/assets/data/mdi_icons.json +1 -1
  49. data/assets/data/menu.html +6 -6
  50. data/assets/data/mmenu.html +6 -6
  51. data/assets/data/mmenu_sidebar.html +4 -4
  52. data/assets/data/mmenu_toc.html +1 -1
  53. data/assets/data/panel.html +189 -123
  54. data/assets/data/quicklinks.html +16 -16
  55. data/assets/data/themes.json +9 -7
  56. data/assets/data/twa_v1.json +1 -1
  57. data/assets/error_pages/HTTP204.html +1 -0
  58. data/assets/error_pages/HTTP400.html +3 -2
  59. data/assets/error_pages/HTTP401.html +3 -2
  60. data/assets/error_pages/HTTP403.html +3 -2
  61. data/assets/error_pages/HTTP404.html +3 -2
  62. data/assets/error_pages/HTTP500.html +3 -2
  63. data/assets/error_pages/HTTP501.html +3 -2
  64. data/assets/error_pages/HTTP502.html +3 -2
  65. data/assets/error_pages/HTTP503.html +3 -2
  66. data/assets/error_pages/HTTP520.html +3 -2
  67. data/assets/error_pages/HTTP521.html +3 -2
  68. data/assets/error_pages/HTTP533.html +3 -2
  69. data/assets/themes/j1/adapter/js/algolia.js +2 -2
  70. data/assets/themes/j1/adapter/js/attic.js +2 -2
  71. data/assets/themes/j1/adapter/js/{mdb.js → bmd.js} +11 -11
  72. data/assets/themes/j1/adapter/js/carousel.js +136 -135
  73. data/assets/themes/j1/adapter/js/clipboard.js +3 -3
  74. data/assets/themes/j1/adapter/js/cookiebar.js +1 -1
  75. data/assets/themes/j1/adapter/js/{ssm.js → fam.js} +275 -148
  76. data/assets/themes/j1/adapter/js/framer.js +74 -62
  77. data/assets/themes/j1/adapter/js/gallery_customizer.js +4 -3
  78. data/assets/themes/j1/adapter/js/j1.js +53 -23
  79. data/assets/themes/j1/adapter/js/jf_gallery.js +2 -2
  80. data/assets/themes/j1/adapter/js/lightbox.js +2 -2
  81. data/assets/themes/j1/adapter/js/logger.js +2 -2
  82. data/assets/themes/j1/adapter/js/{searcher.js → lunr_search.js} +68 -65
  83. data/assets/themes/j1/adapter/js/mmenu.js +17 -11
  84. data/assets/themes/j1/adapter/js/navigator.js +139 -67
  85. data/assets/themes/j1/adapter/js/rouge.js +246 -0
  86. data/assets/themes/j1/adapter/js/rtable.js +181 -0
  87. data/assets/themes/j1/adapter/js/themer.js +68 -122
  88. data/assets/themes/j1/adapter/js/toccer.js +72 -32
  89. data/assets/themes/j1/core/css/animate.css +17 -0
  90. data/assets/themes/j1/core/css/bootstrap.css +40 -48
  91. data/assets/themes/j1/core/css/bootstrap.min.css +3 -3
  92. data/assets/themes/j1/core/css/custom.scss +28 -0
  93. data/assets/themes/j1/core/css/globals.css +14523 -0
  94. data/assets/themes/j1/core/css/globals.min.css +1 -0
  95. data/assets/themes/j1/core/css/globals.scss +28 -0
  96. data/assets/themes/j1/core/css/{fontawesome.css → icon-fonts/fontawesome.css} +31 -12
  97. data/assets/themes/j1/core/css/{fontawesome.min.css → icon-fonts/fontawesome.min.css} +0 -0
  98. data/assets/themes/j1/core/css/{iconify-icons.css → icon-fonts/iconify.css} +51 -38
  99. data/assets/themes/j1/core/css/{iconify-icons.min.css → icon-fonts/iconify.min.css} +1 -1
  100. data/assets/themes/j1/core/css/{material-design-icons.css → icon-fonts/materialdesign.css} +326 -244
  101. data/assets/themes/j1/core/css/icon-fonts/materialdesign.min.css +1 -0
  102. data/assets/themes/j1/core/css/{twemoji.css → icon-fonts/twemoji.css} +61 -51
  103. data/assets/themes/j1/core/css/{twemoji.min.css → icon-fonts/twemoji.min.css} +0 -0
  104. data/assets/themes/j1/core/css/theme_extensions.css +2478 -767
  105. data/assets/themes/j1/core/css/theme_extensions.min.css +1 -1
  106. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.css +7171 -0
  107. data/assets/themes/j1/core/css/themes/bootstrap/bootstrap.min.css +6 -0
  108. data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.css +8118 -0
  109. data/assets/themes/j1/core/css/themes/uno-dark/bootstrap.min.css +6 -0
  110. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +22512 -0
  111. data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +8 -0
  112. data/assets/themes/j1/core/css/uno.css +2490 -949
  113. data/assets/themes/j1/core/css/uno.min.css +1 -1
  114. data/assets/themes/j1/core/css/uno.scss +28 -0
  115. data/assets/themes/j1/core/css/vendor.css +121 -13452
  116. data/assets/themes/j1/core/css/vendor.min.css +1 -7
  117. data/assets/themes/j1/core/css/vendor.scss +28 -0
  118. data/assets/themes/j1/core/js/template.js +6 -11
  119. data/assets/themes/j1/core/js/template.js.map +1 -1
  120. data/assets/themes/j1/core/js/template.min.js +1 -1
  121. data/assets/themes/j1/modules/backstretch/js/backstretch.js +12 -13
  122. data/assets/themes/j1/modules/backstretch/js/backstretch.min.js +12 -13
  123. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.full.js +6930 -0
  124. data/assets/themes/j1/modules/bmd/js/bootstrap-material-design.js +6 -0
  125. data/assets/themes/j1/modules/carousel/css/carousel.css +8 -9
  126. data/assets/themes/j1/modules/carousel/css/carousel.min.css +7 -9
  127. data/assets/themes/j1/modules/carousel/css/carousel_transitions.css +7 -8
  128. data/assets/themes/j1/modules/carousel/css/carousel_transitions.min.css +7 -9
  129. data/assets/themes/j1/modules/carousel/css/theme/uno.css +15 -10
  130. data/assets/themes/j1/modules/carousel/css/theme/uno.min.css +8 -9
  131. data/assets/themes/j1/modules/cash/js/cash.js +1374 -0
  132. data/assets/themes/j1/modules/cash/js/cash.min.js +42 -0
  133. data/assets/themes/j1/modules/clipboard/css/theme/uno.css +7 -7
  134. data/assets/themes/j1/modules/clipboard/css/theme/uno.min.css +8 -45
  135. data/assets/themes/j1/modules/fam/css/uno/fam.css +369 -0
  136. data/assets/themes/j1/modules/fam/js/fam.js +477 -0
  137. data/assets/themes/j1/modules/iframeResizer/examples/frame.nested.html +1 -1
  138. data/assets/themes/j1/modules/iframeResizer/js/{iframeResizer.js → resizer.js} +0 -0
  139. data/assets/themes/j1/modules/iframeResizer/js/{iframeResizer.map → resizer.map} +0 -0
  140. data/assets/themes/j1/modules/iframeResizer/js/{iframeResizer.min.js → resizer.min.js} +0 -0
  141. data/assets/themes/j1/modules/jquery/js/jquery.js +7 -4
  142. data/assets/themes/j1/modules/jquery/js/jquery.min.js +2 -2
  143. data/assets/themes/j1/modules/jquery/js/require.js +2145 -0
  144. data/assets/themes/j1/modules/jquery/js/require.min.js +5 -0
  145. data/assets/themes/j1/modules/justifiedGallery/css/theme/uno.css +8 -9
  146. data/assets/themes/j1/modules/justifiedGallery/css/theme/uno.min.css +8 -31
  147. data/assets/themes/j1/modules/lightGallery/css/themes/uno.css +7 -8
  148. data/assets/themes/j1/modules/lightGallery/css/themes/uno.min.css +8 -10
  149. data/assets/themes/j1/modules/lightbox/css/lightbox.css +11 -12
  150. data/assets/themes/j1/modules/lightbox/css/lightbox.min.css +11 -12
  151. data/assets/themes/j1/modules/lightbox/css/theme/uno.css +7 -7
  152. data/assets/themes/j1/modules/lightbox/css/theme/uno.min.css +7 -8
  153. data/assets/themes/j1/modules/lightbox/js/lightbox.js +11 -12
  154. data/assets/themes/j1/modules/lightbox/js/lightbox.min.js +11 -27
  155. data/assets/themes/j1/modules/lunrSearch/css/lunr_search.css +32 -0
  156. data/assets/themes/j1/modules/lunrSearch/css/lunr_search.min.css +25 -0
  157. data/assets/themes/j1/modules/lunrSearch/js/dateformat.js +125 -0
  158. data/assets/themes/j1/modules/lunrSearch/js/dateformat.min.js +14 -0
  159. data/assets/themes/j1/modules/lunrSearch/js/lunr.js +3475 -0
  160. data/assets/themes/j1/modules/lunrSearch/js/lunr.min.js +51 -0
  161. data/assets/themes/j1/modules/lunrSearch/js/lunr_search.js +184 -0
  162. data/assets/themes/j1/modules/lunrSearch/js/lunr_search.min.js +17 -0
  163. data/assets/themes/j1/modules/lunrSearch/js/mustache.js +772 -0
  164. data/assets/themes/j1/modules/lunrSearch/js/mustache.min.js +772 -0
  165. data/assets/themes/j1/modules/lunrSearch/js/uri.js +2340 -0
  166. data/assets/themes/j1/modules/lunrSearch/js/uri.min.js +93 -0
  167. data/assets/themes/j1/modules/materialize/js/anime.js +1283 -0
  168. data/assets/themes/j1/modules/materialize/js/anime.min.js +34 -0
  169. data/assets/themes/j1/modules/materialize/js/autocomplete.js +450 -0
  170. data/assets/themes/j1/modules/materialize/js/buttons.js +409 -0
  171. data/assets/themes/j1/modules/materialize/js/cards.js +40 -0
  172. data/assets/themes/j1/modules/materialize/js/carousel.js +717 -0
  173. data/assets/themes/j1/modules/materialize/js/cash-dom.js +1044 -0
  174. data/assets/themes/j1/modules/materialize/js/cash.js +960 -0
  175. data/assets/themes/j1/modules/materialize/js/characterCounter.js +136 -0
  176. data/assets/themes/j1/modules/materialize/js/chips.js +481 -0
  177. data/assets/themes/j1/modules/materialize/js/collapsible.js +275 -0
  178. data/assets/themes/j1/modules/materialize/js/component.js +44 -0
  179. data/assets/themes/j1/modules/materialize/js/datepicker.js +975 -0
  180. data/assets/themes/j1/modules/materialize/js/dropdown.js +617 -0
  181. data/assets/themes/j1/modules/materialize/js/forms.js +275 -0
  182. data/assets/themes/j1/modules/materialize/js/global.js +427 -0
  183. data/assets/themes/j1/modules/materialize/js/materialbox.js +453 -0
  184. data/assets/themes/j1/modules/materialize/js/modal.js +382 -0
  185. data/assets/themes/j1/modules/materialize/js/parallax.js +138 -0
  186. data/assets/themes/j1/modules/materialize/js/pushpin.js +145 -0
  187. data/assets/themes/j1/modules/materialize/js/range.js +263 -0
  188. data/assets/themes/j1/modules/materialize/js/ripple.js +335 -0
  189. data/assets/themes/j1/modules/materialize/js/scrollspy.js +295 -0
  190. data/assets/themes/j1/modules/materialize/js/select.js +432 -0
  191. data/assets/themes/j1/modules/materialize/js/sidenav.js +580 -0
  192. data/assets/themes/j1/modules/materialize/js/slider.js +359 -0
  193. data/assets/themes/j1/modules/materialize/js/tabs.js +402 -0
  194. data/assets/themes/j1/modules/materialize/js/tapTarget.js +314 -0
  195. data/assets/themes/j1/modules/materialize/js/timepicker.js +647 -0
  196. data/assets/themes/j1/modules/materialize/js/toasts.js +310 -0
  197. data/assets/themes/j1/modules/materialize/js/tooltip.js +303 -0
  198. data/assets/themes/j1/modules/materialize/js/waves.js +335 -0
  199. data/assets/themes/j1/modules/materialize/scss/components/_badges.scss +55 -0
  200. data/assets/themes/j1/modules/materialize/scss/components/_buttons.scss +322 -0
  201. data/assets/themes/j1/modules/materialize/scss/components/_cards.scss +195 -0
  202. data/assets/themes/j1/modules/materialize/scss/components/_carousel.scss +90 -0
  203. data/assets/themes/j1/modules/materialize/scss/components/_chips.scss +90 -0
  204. data/assets/themes/j1/modules/materialize/scss/components/_collapsible.scss +91 -0
  205. data/assets/themes/j1/modules/materialize/scss/components/_color-classes.scss +32 -0
  206. data/assets/themes/j1/modules/materialize/scss/components/_color-variables.scss +370 -0
  207. data/assets/themes/j1/modules/materialize/scss/components/_datepicker.scss +191 -0
  208. data/assets/themes/j1/modules/materialize/scss/components/_dropdown.scss +85 -0
  209. data/assets/themes/j1/modules/materialize/scss/components/_global.scss +769 -0
  210. data/assets/themes/j1/modules/materialize/scss/components/_grid.scss +156 -0
  211. data/assets/themes/j1/modules/materialize/scss/components/_icons-material-design.scss +5 -0
  212. data/assets/themes/j1/modules/materialize/scss/components/_materialbox.scss +43 -0
  213. data/assets/themes/j1/modules/materialize/scss/components/_modal.scss +94 -0
  214. data/assets/themes/j1/modules/materialize/scss/components/_navbar.scss +208 -0
  215. data/assets/themes/j1/modules/materialize/scss/components/_normalize.scss +447 -0
  216. data/assets/themes/j1/modules/materialize/scss/components/_preloader.scss +334 -0
  217. data/assets/themes/j1/modules/materialize/scss/components/_pulse.scss +34 -0
  218. data/assets/themes/j1/modules/materialize/scss/components/_sidenav.scss +216 -0
  219. data/assets/themes/j1/modules/materialize/scss/components/_slider.scss +92 -0
  220. data/assets/themes/j1/modules/materialize/scss/components/_table_of_contents.scss +33 -0
  221. data/assets/themes/j1/modules/materialize/scss/components/_tabs.scss +99 -0
  222. data/assets/themes/j1/modules/materialize/scss/components/_tapTarget.scss +103 -0
  223. data/assets/themes/j1/modules/materialize/scss/components/_timepicker.scss +183 -0
  224. data/assets/themes/j1/modules/materialize/scss/components/_toast.scss +58 -0
  225. data/assets/themes/j1/modules/materialize/scss/components/_tooltip.scss +32 -0
  226. data/assets/themes/j1/modules/materialize/scss/components/_transitions.scss +13 -0
  227. data/assets/themes/j1/modules/materialize/scss/components/_typography.scss +60 -0
  228. data/assets/themes/j1/modules/materialize/scss/components/_variables.scss +349 -0
  229. data/assets/themes/j1/modules/materialize/scss/components/_waves.scss +114 -0
  230. data/assets/themes/j1/modules/materialize/scss/components/forms/_checkboxes.scss +200 -0
  231. data/assets/themes/j1/modules/materialize/scss/components/forms/_file-input.scss +44 -0
  232. data/assets/themes/j1/modules/materialize/scss/components/forms/_forms.scss +22 -0
  233. data/assets/themes/j1/modules/materialize/scss/components/forms/_input-fields.scss +354 -0
  234. data/assets/themes/j1/modules/materialize/scss/components/forms/_radio-buttons.scss +115 -0
  235. data/assets/themes/j1/modules/materialize/scss/components/forms/_range.scss +161 -0
  236. data/assets/themes/j1/modules/materialize/scss/components/forms/_select.scss +180 -0
  237. data/assets/themes/j1/modules/materialize/scss/components/forms/_switches.scss +89 -0
  238. data/assets/themes/j1/modules/materialize/scss/materialize.scss +41 -0
  239. data/assets/themes/j1/modules/mdiPreviewer/css/previewer.css +82 -0
  240. data/assets/themes/j1/modules/mdiPreviewer/css/previewer.min.css +15 -0
  241. data/{lib/starter_web/collections/posts/private → assets/themes/j1/modules/mdiPreviewer/js}/readme +0 -0
  242. data/assets/themes/j1/modules/mmenuLight/css/theme/uno.css +3 -3
  243. data/assets/themes/j1/modules/mmenuLight/css/theme/uno.min.css +37 -11
  244. data/assets/themes/j1/modules/popper/js/popper.js +1 -1
  245. data/assets/themes/j1/modules/popper/js/popper.js.map +1 -1
  246. data/assets/themes/j1/modules/popper/js/popper.min.js.map +1 -1
  247. data/assets/themes/j1/modules/rouge/js/select.js +25 -0
  248. data/assets/themes/j1/modules/rtable/LICENSE +22 -0
  249. data/assets/themes/j1/modules/rtable/README.md +418 -0
  250. data/assets/themes/j1/modules/rtable/css/tablesaw.stackonly.css +148 -0
  251. data/assets/themes/j1/modules/rtable/css/theme/uno.css +191 -0
  252. data/assets/themes/j1/modules/rtable/css/theme/uno.min.css +191 -0
  253. data/assets/themes/j1/modules/rtable/js/rtable.js +692 -0
  254. data/assets/themes/j1/modules/rtable/js/rtable.min.js +690 -0
  255. data/assets/themes/j1/modules/rtable/js/tablesaw-init.js +18 -0
  256. data/assets/themes/j1/modules/rtable/js/tablesaw.stackonly.js +2371 -0
  257. data/assets/themes/j1/modules/{bsThemeSwitcher → themeSwitcher}/js/switcher.js +46 -38
  258. data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +26 -0
  259. data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.css +153 -0
  260. data/assets/themes/j1/modules/twemoji/css/picker/twemoji-picker.min.css +19 -0
  261. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.js +12 -13
  262. data/assets/themes/j1/modules/twemoji/js/picker/twemoji-picker.min.js +12 -268
  263. data/assets/themes/j1/modules/twemoji/js/twemoji.js +11 -20
  264. data/assets/themes/j1/modules/twemoji/js/twemoji.min.js +11 -17
  265. data/lib/j1/version.rb +1 -1
  266. data/lib/j1_app/j1_auth_manager/config.rb +10 -5
  267. data/lib/j1_app/j1_auth_manager/views/auth_manager_ui.erb +5 -5
  268. data/lib/starter_web/Gemfile +12 -16
  269. data/lib/starter_web/_config.yml +163 -23
  270. data/lib/starter_web/_data/apps/carousel.yml +2 -2
  271. data/lib/starter_web/_data/blocks/banner.yml +46 -36
  272. data/lib/starter_web/_data/blocks/defaults/banner.yml +14 -13
  273. data/lib/starter_web/_data/blocks/defaults/footer.yml +1 -1
  274. data/lib/starter_web/_data/blocks/defaults/panel.yml +3 -2
  275. data/lib/starter_web/_data/blocks/footer.yml +1 -1
  276. data/lib/starter_web/_data/blocks/panel.yml +43 -37
  277. data/lib/starter_web/_data/{template_settings.yml → j1_config.yml} +62 -11
  278. data/lib/starter_web/_data/layouts/home.yml +21 -31
  279. data/lib/starter_web/_data/layouts/page.yml +10 -0
  280. data/lib/starter_web/_data/layouts/post.yml +10 -0
  281. data/lib/starter_web/_data/modules/defaults/cookiebar.yml +3 -1
  282. data/lib/starter_web/_data/modules/defaults/{ssm.yml → fam.yml} +12 -15
  283. data/lib/starter_web/_data/modules/defaults/lunr_search.yml +171 -0
  284. data/lib/starter_web/_data/modules/defaults/navigator.yml +9 -9
  285. data/lib/starter_web/_data/modules/defaults/themer.yml +9 -13
  286. data/lib/starter_web/_data/modules/defaults/toccer.yml +4 -2
  287. data/lib/starter_web/_data/modules/fam.yml +158 -0
  288. data/lib/starter_web/_data/modules/{back2top.yml → lunr_search.yml} +15 -9
  289. data/lib/starter_web/_data/modules/navigator.yml +2 -2
  290. data/lib/starter_web/_data/modules/navigator_menu.yml +60 -9
  291. data/lib/starter_web/_data/modules/themer.yml +0 -17
  292. data/lib/starter_web/_data/modules/toccer.yml +0 -73
  293. data/lib/starter_web/_data/private.yml +56 -108
  294. data/lib/starter_web/_data/resources.yml +238 -90
  295. data/lib/starter_web/_includes/attributes.asciidoc +194 -0
  296. data/lib/starter_web/_includes/breadcrumbs.html +11 -0
  297. data/lib/starter_web/_includes/documents/licenses/mit.asciidoc +19 -0
  298. data/lib/starter_web/{collections/posts/protected → _includes/documents}/readme +0 -0
  299. data/lib/starter_web/_includes/tables/jekyll_variables.asciidoc +45 -0
  300. data/lib/starter_web/_includes/tables/template_variables.asciidoc +46 -0
  301. data/lib/starter_web/_plugins/debug.rb +0 -1
  302. data/lib/starter_web/_plugins/filters.rb +0 -1
  303. data/lib/starter_web/_plugins/{lorem-inline.rb → lorem_inline.rb} +1 -2
  304. data/lib/starter_web/_plugins/lunr_index.rb +313 -0
  305. data/lib/starter_web/_plugins/prettify.rb +0 -3
  306. data/lib/starter_web/_plugins/simple_search_filter.rb +0 -1
  307. data/lib/starter_web/_plugins/symlink_watcher.rb +2 -3
  308. data/lib/starter_web/assets/images/modules/attics/banner/lunr-banner-1280x800.jpg +0 -0
  309. data/lib/starter_web/assets/images/modules/attics/katie-moum-1920x1280.jpg +0 -0
  310. data/lib/starter_web/assets/images/modules/attics/tldr-1920x800.jpg +0 -0
  311. data/lib/starter_web/assets/images/modules/icons/j1/favicon.ico +0 -0
  312. data/lib/starter_web/assets/images/modules/icons/j1/j1-256x256.png +0 -0
  313. data/lib/starter_web/assets/images/modules/icons/j1/j1-32x32.ico +0 -0
  314. data/lib/starter_web/assets/images/modules/icons/j1/j1-512x512.png +0 -0
  315. data/lib/starter_web/assets/images/modules/icons/j1/j1-64x64.png +0 -0
  316. data/lib/starter_web/assets/images/modules/icons/j1/j1.ico +0 -0
  317. data/lib/starter_web/assets/images/modules/icons/j1/scalable/j1.svg +31 -35
  318. data/lib/starter_web/assets/images/pages/winlogbeat/coordinate-map.png +0 -0
  319. data/lib/starter_web/assets/images/pages/winlogbeat/kibana-powershell.jpg +0 -0
  320. data/lib/starter_web/assets/images/pages/winlogbeat/option_ignore_outgoing.png +0 -0
  321. data/lib/starter_web/assets/images/pages/winlogbeat/winlogbeat-dashboard.png +0 -0
  322. data/{assets/README.md → lib/starter_web/collections/posts/private/_posts/readme} +0 -0
  323. data/lib/starter_web/collections/posts/protected/_posts/readme +0 -0
  324. data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1-template.adoc.erb +70 -72
  325. data/lib/starter_web/collections/posts/public/featured/_posts/2018-05-01-confusion-about-base-url.adoc +16 -6
  326. data/lib/starter_web/collections/posts/public/featured/_posts/2019-05-01-top-open-source-static-site-generators.adoc +37 -28
  327. data/lib/starter_web/collections/posts/public/featured/_posts/2019-06-01-about-cookies.adoc +28 -24
  328. data/lib/starter_web/collections/posts/public/featured/_posts/_includes/attributes.asciidoc +38 -0
  329. data/lib/starter_web/collections/posts/public/featured/_posts/_includes/documents/readme +0 -0
  330. data/lib/starter_web/collections/posts/public/featured/_posts/{000_includes → _includes/documents}/unsplash-badge.asciidoc +0 -0
  331. data/lib/starter_web/collections/posts/public/featured/_posts/_includes/tables/readme +0 -0
  332. data/lib/starter_web/collections/posts/public/series/_posts/2018-11-01-docker-using-shared-folders.adoc +494 -502
  333. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +144 -0
  334. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +146 -0
  335. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +146 -0
  336. data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +146 -0
  337. data/lib/starter_web/collections/posts/public/{featured/_posts/000_includes → series/_posts/_includes}/attributes.asciidoc +8 -18
  338. data/lib/starter_web/collections/posts/public/series/_posts/{000_includes → _includes}/documents/100-docker-using-shared-folders.asciidoc +0 -0
  339. data/lib/starter_web/collections/posts/public/series/_posts/{000_includes → _includes}/documents/loop.sh +0 -0
  340. data/lib/starter_web/collections/posts/public/series/_posts/{000_includes → _includes}/tables/debug_variables.asciidoc +0 -0
  341. data/lib/starter_web/collections/posts/public/test_posts/_posts/2020-09-11-test_post.adoc +218 -0
  342. data/lib/starter_web/collections/posts/public/{wikipedia/_posts/000_includes → test_posts/_posts/_includes}/attributes.asciidoc +9 -21
  343. data/lib/starter_web/collections/posts/public/test_posts/_posts/_includes/documents/readme +0 -0
  344. data/lib/starter_web/collections/posts/public/{wikipedia/_posts/000_includes → test_posts/_posts/_includes}/tables/debug_variables.asciidoc +0 -0
  345. data/lib/starter_web/collections/posts/public/test_posts/_posts/_includes/tables/readme +0 -0
  346. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-20-minneapolis.adoc +16 -8
  347. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-24-narcisse-snake-dens.adoc +2 -7
  348. data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-26-columbia-river.adoc +2 -6
  349. data/lib/starter_web/collections/posts/public/wikipedia/_posts/_includes/attributes.asciidoc +37 -0
  350. data/lib/starter_web/collections/posts/public/wikipedia/_posts/_includes/documents/readme +0 -0
  351. data/lib/starter_web/collections/posts/public/wikipedia/_posts/_includes/tables/readme +0 -0
  352. data/lib/starter_web/index.html +16 -10
  353. data/lib/starter_web/package.json +5 -2
  354. data/lib/starter_web/pages/protected/site_search.adoc +8 -19
  355. data/lib/starter_web/pages/public/about/about_site.adoc +0 -2
  356. data/lib/starter_web/pages/public/about/become_a_patron.adoc +1 -3
  357. data/lib/starter_web/pages/public/blog/navigator/archive.html +21 -20
  358. data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +21 -23
  359. data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +22 -21
  360. data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +19 -15
  361. data/lib/starter_web/pages/public/blog/navigator/index.html +6 -2
  362. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/100_meet_and_greet_jekyll.adoc +15 -21
  363. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/200_preparations.adoc +17 -24
  364. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/300_first_awesome_web.adoc +16 -23
  365. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{000_includes → _includes}/attributes.asciidoc +15 -13
  366. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/documents/100_meet_and_greet_jekyll.asciidoc +31 -0
  367. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{000_includes → _includes}/documents/200_preparations.asciidoc +0 -0
  368. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{000_includes → _includes}/documents/300_first_awesome_web.asciidoc +0 -0
  369. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/{000_includes → _includes}/parts.asciidoc +1 -1
  370. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/tables/debug_variables.asciidoc +48 -0
  371. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/_includes/tables/readme +0 -0
  372. data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +94 -108
  373. data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +52 -60
  374. data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +60 -72
  375. data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +84 -90
  376. data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +118 -138
  377. data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +34 -42
  378. data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +286 -96
  379. data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +145 -59
  380. data/lib/starter_web/pages/public/learn/roundtrip/600_lunr.adoc +237 -0
  381. data/lib/starter_web/pages/public/learn/roundtrip/610_fam.adoc +302 -0
  382. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/attributes.asciidoc +10 -29
  383. data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/100_gistblock.asciidoc +28 -0
  384. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_bottom_info.asciidoc +2 -2
  385. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_bottom_left_warning.asciidoc +2 -2
  386. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_bottom_right_danger.asciidoc +2 -2
  387. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_central_success.asciidoc +2 -2
  388. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_full_height_left_info.asciidoc +2 -2
  389. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_full_height_right_success.asciidoc +2 -2
  390. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_table_3_column.asciidoc +1 -1
  391. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_top_info.asciidoc +2 -2
  392. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_top_left_info.asciidoc +2 -2
  393. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/410_top_right_success.asciidoc +2 -2
  394. data/lib/starter_web/pages/public/learn/roundtrip/{000_includes → _includes}/documents/419_advanced_modals_demo.asciidoc +16 -16
  395. data/lib/starter_web/pages/public/learn/roundtrip/_includes/tables/readme +0 -0
  396. data/lib/starter_web/pages/public/learn/{whats_up.adoc → where_to_go.adoc} +26 -44
  397. data/lib/starter_web/pages/public/legal/de/100_impress.adoc +3 -2
  398. data/lib/starter_web/pages/public/legal/de/200_terms_of_use.adoc +2 -1
  399. data/lib/starter_web/pages/public/legal/de/300_privacy.adoc +7 -12
  400. data/lib/starter_web/pages/public/legal/de/400_license_agreement.adoc +2 -1
  401. data/lib/starter_web/pages/public/legal/de/500_support.adoc +2 -1
  402. data/lib/starter_web/pages/public/legal/en/000_copyright.adoc +30 -27
  403. data/lib/starter_web/pages/public/legal/en/100_impress.adoc +8 -5
  404. data/lib/starter_web/pages/public/legal/en/200_terms_of_use.adoc +12 -8
  405. data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +32 -31
  406. data/lib/starter_web/pages/public/legal/en/400_license_agreement.adoc +11 -3
  407. data/lib/starter_web/pages/public/legal/en/500_support.adoc +8 -1
  408. data/lib/starter_web/pages/public/legal/en/eu/cookie.policy.asciidoc +1 -1
  409. data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +66 -65
  410. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/attributes.asciidoc +22 -8
  411. data/lib/starter_web/pages/public/previewer/_includes/documents/licenses/mit.asciidoc +19 -0
  412. data/lib/starter_web/pages/public/previewer/_includes/documents/readme +0 -0
  413. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/100_absolute_sizes.asciidoc +1 -1
  414. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/110_bs_grid_sizes.asciidoc +1 -1
  415. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/120_relative_sizes.asciidoc +1 -1
  416. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/200_rotate.asciidoc +1 -1
  417. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/300_flip.asciidoc +1 -1
  418. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/400_spin_pulsed.asciidoc +1 -1
  419. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/500_bw_color_palette.asciidoc +1 -1
  420. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/510_bs_color_palette.asciidoc +1 -1
  421. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/600_md_color_palette.asciidoc +1 -1
  422. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/601_md_color_palette_indigo.asciidoc +1 -1
  423. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/mdi_icons/602_md_color_palette_pink.asciidoc +1 -1
  424. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/twitter_emoji/100_bs_sizes.asciidoc +1 -1
  425. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/twitter_emoji/100_relative_sizes.asciidoc +1 -1
  426. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/twitter_emoji/200_rotate.asciidoc +1 -1
  427. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/twitter_emoji/300_flip.asciidoc +1 -1
  428. data/lib/starter_web/pages/public/previewer/{000_includes → _includes}/tables/twitter_emoji/400_spin_pulsed.asciidoc +1 -1
  429. data/lib/starter_web/pages/public/previewer/bootstrap_theme.adoc +1374 -596
  430. data/lib/starter_web/pages/public/previewer/iframer.adoc +37 -35
  431. data/lib/starter_web/pages/public/previewer/justified_gallery.html +2 -1
  432. data/lib/starter_web/pages/public/previewer/mdi_icons_preview.adoc +12 -20
  433. data/lib/starter_web/pages/public/previewer/rouge.adoc +202 -0
  434. data/lib/starter_web/pages/public/previewer/twitter_emoji_preview.adoc +24 -30
  435. data/lib/starter_web/pages/public/test_pages/_includes/attributes.asciidoc +49 -0
  436. data/lib/starter_web/pages/public/{learn/roundtrip/000_includes → test_pages/_includes}/documents/100_gistblock.asciidoc +0 -0
  437. data/lib/starter_web/pages/public/test_pages/_includes/tables/000_bem_specifiers.asciidoc +22 -0
  438. data/lib/starter_web/pages/public/test_pages/_includes/tables/000_specifier_examples.asciidoc +56 -0
  439. data/lib/starter_web/pages/public/test_pages/breadcrumbs_tester.adoc +62 -0
  440. data/lib/starter_web/pages/public/test_pages/deck_of_posts.adoc +165 -0
  441. data/lib/starter_web/pages/public/test_pages/floating_actions_button.adoc +523 -0
  442. data/lib/starter_web/pages/public/{learn/examples → test_pages}/floating_ad.adoc +8 -21
  443. data/lib/starter_web/pages/public/{learn/examples → test_pages}/floating_div.adoc +25 -38
  444. data/lib/starter_web/pages/public/test_pages/lunr_tester.adoc +89 -0
  445. data/lib/starter_web/pages/public/test_pages/nav_pagination_tester.adoc +284 -0
  446. data/lib/starter_web/pages/public/test_pages/page_attribute_tester.adoc +196 -0
  447. data/lib/starter_web/pages/public/test_pages/responsive_images.adoc +213 -0
  448. data/lib/starter_web/pages/public/test_pages/responsive_tables.adoc +210 -0
  449. data/lib/starter_web/pages/public/test_pages/toccer_tester.adoc +2245 -0
  450. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/attributes.asciidoc +0 -0
  451. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/100_gistblock.asciidoc +0 -0
  452. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_bottom_info.asciidoc +0 -0
  453. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_bottom_left_warning.asciidoc +0 -0
  454. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_bottom_right_danger.asciidoc +0 -0
  455. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_central_success.asciidoc +0 -0
  456. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_full_height_left_info.asciidoc +0 -0
  457. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_full_height_right_success.asciidoc +0 -0
  458. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_table_3_column.asciidoc +1 -1
  459. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_top_info.asciidoc +0 -0
  460. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_top_left_info.asciidoc +0 -0
  461. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/410_top_right_success.asciidoc +0 -0
  462. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_includes/documents/419_advanced_modals_html.asciidoc +0 -0
  463. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/000_test_youtube_video.adoc +0 -0
  464. data/lib/starter_web/pages/public/{learn → test_pages}/vtutorials/100_basic_video.adoc +0 -0
  465. data/lib/starter_web/utilsrv/_defaults/package.json +1 -1
  466. data/lib/starter_web/utilsrv/package.json +1 -1
  467. metadata +263 -145
  468. data/_includes/themes/j1/blocks/footer/boxes/about_box.proc.org +0 -40
  469. data/assets/data/jupyter/notebooks/_html/template.full.head.html +0 -75
  470. data/assets/data/jupyter/notebooks/_html/visualisation.html +0 -968
  471. data/assets/data/jupyter/notebooks/html/template.html +0 -50
  472. data/assets/data/jupyter/notebooks/html/visualisation.ok.html +0 -949
  473. data/assets/data/jupyter/notebooks/tutorial.ipynb +0 -169
  474. data/assets/data/jupyter/notebooks/visualisation.ipynb +0 -9413
  475. data/assets/data/search.json +0 -165
  476. data/assets/data/ssm.html +0 -242
  477. data/assets/themes/j1/adapter/js/back2top.js +0 -233
  478. data/assets/themes/j1/core/css/material-design-icons.min.css +0 -1
  479. data/assets/themes/j1/modules/backstretch/js/backstretch.min.js.org +0 -1
  480. data/assets/themes/j1/modules/bootstrap/css/bootstrap.css +0 -10278
  481. data/assets/themes/j1/modules/bootstrap/css/bootstrap.css.map +0 -1
  482. data/assets/themes/j1/modules/bootstrap/css/bootstrap.min.css +0 -7
  483. data/assets/themes/j1/modules/bootstrap/css/bootstrap.min.css.map +0 -1
  484. data/assets/themes/j1/modules/bootstrap/js/bootstrap.js +0 -4420
  485. data/assets/themes/j1/modules/bootstrap/js/bootstrap.js.map +0 -1
  486. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js +0 -7
  487. data/assets/themes/j1/modules/bootstrap/js/bootstrap.min.js.map +0 -1
  488. data/assets/themes/j1/modules/bsDatepicker/css/datepicker.css +0 -203
  489. data/assets/themes/j1/modules/bsDatepicker/css/theme/uno.css +0 -235
  490. data/assets/themes/j1/modules/bsDatepicker/js/datepicker.js +0 -509
  491. data/assets/themes/j1/modules/bsDatepicker/less/datepicker.less +0 -122
  492. data/assets/themes/j1/modules/bsThemeSwitcher/js/switcher.min.js +0 -20
  493. data/assets/themes/j1/modules/jekyllSearch/js/simple-jekyll-search.js +0 -468
  494. data/assets/themes/j1/modules/jekyllSearch/js/simple-jekyll-search.min.js +0 -6
  495. data/assets/themes/j1/modules/jqMouseWheel/README.md +0 -76
  496. data/assets/themes/j1/modules/jqMouseWheel/js/jquery.mousewheel.js +0 -221
  497. data/assets/themes/j1/modules/jqMouseWheel/js/jquery.mousewheel.min.js +0 -9
  498. data/assets/themes/j1/modules/noUISlider/LICENSE +0 -13
  499. data/assets/themes/j1/modules/noUISlider/css/nouislider.css +0 -260
  500. data/assets/themes/j1/modules/noUISlider/css/nouislider.min.css +0 -1
  501. data/assets/themes/j1/modules/noUISlider/js/nouislider.js +0 -2312
  502. data/assets/themes/j1/modules/noUISlider/js/nouislider.min.js +0 -3
  503. data/assets/themes/j1/modules/polyfills/js/msie.js +0 -140
  504. data/assets/themes/j1/modules/tocbot/css/theme/uno.css +0 -89
  505. data/assets/themes/j1/modules/tocbot/css/theme/uno.min.css +0 -89
  506. data/assets/themes/j1/modules/tocbot/css/tocbot.css +0 -75
  507. data/assets/themes/j1/modules/tocbot/css/tocbot.min.css +0 -19
  508. data/assets/themes/j1/modules/tocbot/js/tocbot.js +0 -19
  509. data/assets/themes/j1/modules/tocbot/js/tocbot.min.js +0 -19
  510. data/lib/starter_web/_data/modules/defaults/back2top.yml +0 -146
  511. data/lib/starter_web/_data/modules/defaults/cookie_consent.yml +0 -132
  512. data/lib/starter_web/_data/modules/defaults/stickybits.yml +0 -36
  513. data/lib/starter_web/_data/modules/ssm.yml +0 -142
  514. data/lib/starter_web/assets/images/modules/attics/welcome-1920x1280-bw.jpg +0 -0
  515. data/lib/starter_web/collections/posts/public/series/_posts/000_includes/attributes.asciidoc +0 -66
  516. data/lib/starter_web/pages/public/learn/kickstarter/web_in_a_day/000_includes/documents/100_meet_and_greet_jekyll.asciidoc +0 -31
  517. data/lib/starter_web/pages/public/learn/roundtrip/000_bs_tour.1.asciidoc +0 -120
  518. data/lib/starter_web/pages/public/learn/roundtrip/000_bs_tour.adoc +0 -144
  519. data/lib/starter_web/pages/public/learn/roundtrip/000_bs_tour_api.adoc +0 -642
  520. data/lib/starter_web/pages/public/learn/roundtrip/510_mdb_preview/000_includes/attributes.asciidoc +0 -69
  521. data/lib/starter_web/pages/public/learn/roundtrip/510_mdb_preview/000_includes/documents/100_buttons.asciidoc +0 -170
  522. data/lib/starter_web/pages/public/learn/roundtrip/510_mdb_preview/mdb_previewer.adoc +0 -52
  523. data/lib/starter_web/pages/public/learn/roundtrip/bs_tour.js +0 -98
@@ -9,9 +9,7 @@
9
9
  #
10
10
  # J1 Template is licensed under the MIT License.
11
11
  # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
12
- #
13
12
  # ------------------------------------------------------------------------------
14
- #
15
13
  # NOTE:
16
14
  # CustomFilters cannot be used in SAFE mode (e.g not usable for
17
15
  # rendering pages with Jekyll on GitHub
@@ -23,7 +21,6 @@
23
21
  #
24
22
  # {% endcapture %}
25
23
  # {{ cache_name | pretty_print }}
26
- #
27
24
  # ------------------------------------------------------------------------------
28
25
  require 'nokogiri'
29
26
  require 'nokogiri-pretty'
@@ -9,7 +9,6 @@
9
9
  #
10
10
  # J1 Template is licensed under the MIT License.
11
11
  # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
12
- #
13
12
  # ------------------------------------------------------------------------------
14
13
 
15
14
  module Jekyll
@@ -13,14 +13,13 @@
13
13
  # See: https://github.com/willnorris/willnorris.com/blob/master/LICENSE
14
14
  # J1 Template is licensed under the MIT License.
15
15
  # See: https://github.com/jekyll-one-org/J1 Template/blob/master/LICENSE
16
- #
17
16
  # ------------------------------------------------------------------------------
18
17
  # NOTE:
19
18
  # The symlink_watcher plugin extends jekyll-watch to listen also
20
19
  # for changes in any symlinked sub-directory.
21
20
  #
22
- # For example, in _drafts directory is a symlink to a directory
23
- # elsewhere on the filesystem. This plugin will cause jekyll to
21
+ # For example, in _drafts directory is a symlink to a directory
22
+ # elsewhere on the filesystem. This plugin will cause jekyll to
24
23
  # regenerate the site when ANY file change in the drafts folder.
25
24
  # ------------------------------------------------------------------------------
26
25
  require "find"
@@ -16,7 +16,7 @@
16
16
  version="1.1"
17
17
  inkscape:version="0.91 r13725"
18
18
  sodipodi:docname="j1.svg"
19
- inkscape:export-filename="X:\j1\github\j1_template\packages\300_template_src\assets\images\modules\icons\j1\j1-512x512.png"
19
+ inkscape:export-filename="X:\j1\github\j1-template\packages\300_template_src\assets\images\modules\icons\j1\j1-512x512.png"
20
20
  inkscape:export-xdpi="90"
21
21
  inkscape:export-ydpi="90">
22
22
  <title
@@ -1313,9 +1313,9 @@
1313
1313
  borderopacity="1.0"
1314
1314
  inkscape:pageopacity="0.0"
1315
1315
  inkscape:pageshadow="2"
1316
- inkscape:zoom="1.3373274"
1317
- inkscape:cx="341.84077"
1318
- inkscape:cy="181.05754"
1316
+ inkscape:zoom="1.71"
1317
+ inkscape:cx="250"
1318
+ inkscape:cy="250"
1319
1319
  inkscape:document-units="px"
1320
1320
  inkscape:current-layer="layer1"
1321
1321
  showgrid="true"
@@ -1361,10 +1361,6 @@
1361
1361
  position="666.2542,249.0041"
1362
1362
  orientation="0,1"
1363
1363
  id="guide4541" />
1364
- <sodipodi:guide
1365
- position="-25.802752,175.45872"
1366
- orientation="0,1"
1367
- id="guide4547" />
1368
1364
  </sodipodi:namedview>
1369
1365
  <metadata
1370
1366
  id="metadata7">
@@ -1417,33 +1413,33 @@
1417
1413
  id="layer1"
1418
1414
  transform="translate(0,-552.36218)"
1419
1415
  style="display:inline">
1420
- <rect
1421
- style="fill:none;fill-opacity:1"
1422
- id="rect3745"
1423
- width="93.470009"
1424
- height="91.974487"
1425
- x="-267.69809"
1426
- y="556.59729" />
1427
- <rect
1428
- style="fill:#ffffff;fill-opacity:1"
1429
- id="rect3747"
1430
- width="102.44314"
1431
- height="109.92074"
1432
- x="-222.08473"
1433
- y="631.37329" />
1434
- <text
1435
- xml:space="preserve"
1436
- style="font-style:normal;font-weight:normal;font-size:203.11209106px;line-height:125%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#87aade;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
1437
- x="57.554077"
1438
- y="1092.8141"
1439
- id="text4682"
1440
- sodipodi:linespacing="125%"
1441
- transform="scale(1.2190564,0.82030662)"><tspan
1442
- sodipodi:role="line"
1443
- id="tspan4684"
1444
- x="57.554077"
1445
- y="1092.8141"
1446
- style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:564.20019531px;font-family:'Brush Script MT';-inkscape-font-specification:'Brush Script MT Italic';fill:#87aade;">j1</tspan></text>
1416
+ <g
1417
+ id="g4482">
1418
+ <text
1419
+ transform="scale(-1.1438394,0.87424863)"
1420
+ sodipodi:linespacing="125%"
1421
+ id="text4513"
1422
+ y="1111.0399"
1423
+ x="-420.70685"
1424
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:541.57806396px;line-height:125%;font-family:Roboto;-inkscape-font-specification:Roboto;letter-spacing:0px;word-spacing:0px;fill:#757575;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1425
+ xml:space="preserve"><tspan
1426
+ y="1111.0399"
1427
+ x="-420.70685"
1428
+ id="tspan4515"
1429
+ sodipodi:role="line">1</tspan></text>
1430
+ <text
1431
+ transform="scale(1.1450956,-0.87328952)"
1432
+ sodipodi:linespacing="125%"
1433
+ id="text4513-3"
1434
+ y="-723.17688"
1435
+ x="15.25074"
1436
+ style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:545.76879883px;line-height:125%;font-family:Roboto;-inkscape-font-specification:Roboto;letter-spacing:0px;word-spacing:0px;display:inline;fill:#0d47a1;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
1437
+ xml:space="preserve"><tspan
1438
+ y="-723.17688"
1439
+ x="15.25074"
1440
+ id="tspan4515-9"
1441
+ sodipodi:role="line">1</tspan></text>
1442
+ </g>
1447
1443
  </g>
1448
1444
  <g
1449
1445
  style="display:none"
@@ -6,7 +6,7 @@ description: Auto-generated welcome post
6
6
  date: <%= Time.now.strftime('%Y-%m-%d %H:%M:%S %z') %>
7
7
  series:
8
8
  adsense: false
9
- image: /assets/images/modules/attics/welcome-1920x1280-bw.jpg
9
+ image: /assets/images/modules/attics/katie-moum-1920x1280.jpg
10
10
 
11
11
  tags: [ Example, Post ]
12
12
  index: []
@@ -19,47 +19,48 @@ resource_options:
19
19
  - attic:
20
20
  opacity: 0.5
21
21
  slides:
22
- - url: /assets/images/modules/attics/welcome-1920x1280-bw.jpg
23
- alt: Photo by Belinda Fewings on Unsplash
22
+ - url: /assets/images/modules/attics/katie-moum-1920x1280.jpg
23
+ alt: Photo by Katie Moum on Unsplash
24
24
  alignY: 0.3
25
25
  # caption:
26
- # text: Photo by Belinda Fewings on Unsplash
27
- # href: https://unsplash.com/@bel2000a
26
+ # text: Photo by Katie Moum on Unsplash
27
+ # href: https://unsplash.com/@katiemoum
28
28
  badge:
29
29
  type: unsplash
30
- author: Belinda Fewings
31
- href: https://unsplash.com/@bel2000a
30
+ author: Katie Moum
31
+ href: https://unsplash.com/@katiemoum
32
32
  ---
33
33
 
34
+ // Page Initializer
35
+ // =============================================================================
36
+ // Enable the Liquid Preprocessor
37
+ :page-liquid:
34
38
 
35
- // NOTE: General Asciidoc page attributes settings
39
+ // Place an excerpt at the most top position
36
40
  // -----------------------------------------------------------------------------
37
- :page-liquid:
41
+ All you're doing at the end of the day is writing your content and Jekyll does
42
+ all the tricky things needed for a website: putting out HTML, Javascript and
43
+ CSS. As a result, the site creation process gets out of your way. It's done
44
+ by Jekyll, and allows you to concentrate on what truly matters: your content.
45
+
46
+ [role="clearfix mb-3"]
47
+ excerpt__end
38
48
 
39
- // Additional Asciidoc page attributes goes here
49
+ // Load Liquid procedures
40
50
  // -----------------------------------------------------------------------------
41
- // :page-imagesdir: {{page.images.dir}}
51
+ {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
42
52
 
53
+ // Load page attributes
54
+ // -----------------------------------------------------------------------------
55
+ {% include {{load_attributes}} scope="all" %}
43
56
 
44
- // NOTE: Place an excerpt at the most top position
57
+ // Set page (local) attributes here
45
58
  // -----------------------------------------------------------------------------
46
- If you’re not familiar with Jekyll (or other site generators), Jekyll is a
47
- so-called static site generator. Think of it like a CMS but without all the
48
- complexity and headache. No need to build a giant content strangling Rube
49
- Goldberg machine to manage content.
50
-
51
- All you’re doing at the end of the day is writing your content and Jekyll does
52
- all the tricky things needed for a web site: putting out HTML, Javascript
53
- and CSS. As a result, the site creation process gets out of your way, it's done
54
- by Jekyll, and allows you to concentrate on what truly matters: your content.
55
- [role="clearfix mb-3"]
56
- excerpt__end
57
- [role="clearfix mb-3"]
58
- excerpt__end
59
+ // :page--attr: <attr-value>
59
60
 
60
61
 
61
62
  // Page content
62
- // -----------------------------------------------------------------------------
63
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
63
64
  [[readmore]]
64
65
  == What is a static site?
65
66
 
@@ -67,93 +68,90 @@ excerpt__end
67
68
  // image::{{page.image}}[{{page.title}}]
68
69
  // image::/assets/images/modules/attics/spider-web-1920x1200-bw.png[{{page.title}}, 800]
69
70
 
70
- All you’re doing at the end of the day is writing your content and Jekyll does
71
- all the tricky things needed for a web site: putting out HTML, Javascript
72
- and CSS. As a result, the site creation process gets out of your way, it's done
73
- by Jekyll, and allows you to concentrate on what truly matters: your content.
74
-
75
- A static site serve the content straight to the user as it is stored on
76
- the server side. To put it in another way, in opposition to WordPress
71
+ A static site serves the content straight to the user as it is stored on
72
+ the server-side. To put it in another way, in opposition to WordPress
77
73
  which use a database to load dynamic content, a static site will display
78
74
  the same content to every user as it will directly load the HTML files
79
- on the server.
80
-
81
- === What is different?
82
75
 
83
- What are the differences between a static site and a dynamic website?
76
+ === What's different?
84
77
 
85
78
  To make it simple, a dynamic website uses a database and PHP/MySQL to
86
- generate the content of a page when a user will request it. For example,
79
+ generate the content of a page when a user requests it. For example,
87
80
  building a website using WordPress CMS will result in having a dynamic
88
- website.
81
+ Website.
89
82
 
90
83
  === Why use a static site?
91
84
 
92
- Wat are the advantages of a static website over a dynamic site?
93
- You may be wondering Why should I build a static site when I could do a
94
- WordPress?”. Well, having a database implies a lot of downsides. Here
95
- comes the tree main advantages of using a static site over a dynamic
85
+ What are the advantages of a static website over a dynamic site?
86
+ You may be wondering *Why should I build a static site when I could do a
87
+ WordPress?*. Well, having a database implies a lot of downsides. Here
88
+ come the main advantages of using a static site over a dynamic
96
89
  one.
97
90
 
98
- Static: the better performance and a crazy fast load time!
91
+ Performance::
92
+ The better performance and a crazy fast load time.
99
93
 
100
- One the of the main advantages of using a static site is the fact that
101
- it is crazy fast to load. Indeed, when the user request a page, there is
102
- no need to request a database and various files in order to generate the
94
+ One of the main advantages of using a static site is the fact that
95
+ it is crazy fast to load. Indeed, when the user requests a page, there is
96
+ no need to request a database and various files to generate the
103
97
  page itself as all the content is already placed in a one and only file:
104
- an HTML one. That’s why, by using a static site you will get a boost in
98
+ an HTML one. That’s why by using a static site, you will get a boost in
105
99
  your loading time that will provide great user experience for the
106
100
  internauts. Moreover, we know that more and more people are surfing the
107
101
  web using their smartphones with, sometimes, poor internet connections,
108
102
  that’s why having fast loading times will participate in making your
109
- website mobile friendly.
103
+ website mobile-friendly.
110
104
 
111
- == Security aspects
112
-
113
- Having a static website: say goodbye to hacking and security issues!
105
+ Security::
106
+ Having a static website: say goodbye to hacking and security issues.
114
107
 
115
108
  Tired of getting WordPress notifications about security issues and
116
109
  updates every week? No worries, as a static site has no database, there
117
110
  are close to no hack possible compared to a WordPress website. Indeed,
118
- your site will have way less footprints and security issues since it
111
+ your site will have way fewer footprints and security issues since it
119
112
  will only load plain HTML and CSS files. The security gain in having a
120
113
  static website is one the main reason why many famous brands switch to
121
- static site instead of having their website on Drupal or WordPress.
122
-
123
- == Building and Hosting
114
+ a static site instead of having their website on Drupal or WordPress.
124
115
 
125
- Building a static site and hosting: you will save you money!
116
+ Hosting::
117
+ Building a static site and hosting: you will save you money.
126
118
 
127
119
  Using a static site, you will only have most of the time only HTML and
128
- CSS files to host. This kind of files are super light which also means
120
+ CSS files to host. This kind of files is super light which also means
129
121
  that you will not need a powerhouse hosting to have a static site up and
130
- running. Moreover, if your traffic suddenly increase, your site will not
122
+ running. Moreover, if your traffic suddenly increases, your site will not
131
123
  go down contrary to a dynamic site which should request the database
132
124
  each time for each user.
133
125
 
126
+ Control::
127
+ You're the master.
128
+
129
+ Using a CMS means, giving control over your site to others. Simple like this.
130
+
134
131
  == Why use a site generator?
135
132
 
136
- Working with HTML files can sometimes be quite annoying. Indeed, if you
137
- need to make a modification you must manually change every file. If you
138
- have a website with 10 pages, it can be ok but imagine if you have a
139
- corporate site with 100+ pages or a blog with thousands of pages?! Using
140
- a static site generator will solve this issue as it separates the
133
+ Working with pure HTML files is annoying; senseless today. Indeed, if you need
134
+ to make a modification on your *self-managed* pages, you have to manually
135
+ change every file. That's monkey's work from the early days of static websites.
136
+ If your site comes with 10 pages, it can be manageable but imagine if your site
137
+ is providing 100+ pages or the blog planned for hundreds of articles?
138
+
139
+ Using a static site generator will solve this issue as it separates the
141
140
  content and the template. To say it another way, by using a static site
142
- generator you will only need to make the modification once and the
141
+ generator, you will only need to make the modification once, and the
143
142
  generator will apply it to all your pages.
144
143
 
145
144
  === Why Jekyll?
146
145
 
147
146
  As the popularity of static sites is growing, there are plenty of static
148
- site generators available on the market. The more famous are Jekyll,
147
+ site generators available on the market. The more famous is Jekyll,
149
148
  Middleman and Hugo. Each one has its own specificities and may suits you
150
- better depending on the programming languages you already are familiar
151
- with.
149
+ better depending on the programming languages you already are familiar with.
152
150
 
153
151
  Which static site generator should I use?
154
152
 
155
- When I wanted to switch from WordPress to Static I personally
156
- choose Jekyll as for me it is the best static site generator so far.
157
- This blog is powered under Jekyll.
153
+ When I decided to go for a blog based on a static web, I personally
154
+ choose Jekyll as for me. It's a well known static site generator, good support
155
+ in case of trouble and the software gets regularly updated.
158
156
 
159
- Happy Jekylling!
157
+ This blog is powered by Jekyll. For good reasons.
@@ -9,8 +9,7 @@ adsense: false
9
9
  image: /assets/images/collections/blog/featured/what-is-a-baseurl.jpg
10
10
 
11
11
  tags: [ Jekyll, Configuration ]
12
- index: [ Jekyll, Configuration, URL, base_url ]
13
- categories: [ featured ]
12
+ categories: [ Featured ]
14
13
 
15
14
  regenerate: false
16
15
 
@@ -25,12 +24,14 @@ resource_options:
25
24
  alt: jekyll.1200x600-bw.jpg
26
25
  ---
27
26
 
28
- // NOTE: General Asciidoc page attributes settings
29
- // -----------------------------------------------------------------------------
27
+ // Page Initializer
28
+ // =============================================================================
29
+ // Enable the Liquid Preprocessor
30
30
  :page-liquid:
31
31
 
32
- // Additional Asciidoc page attributes goes here
32
+ // Set page (local) attributes here
33
33
  // -----------------------------------------------------------------------------
34
+ // :page--attr: <attr-value>
34
35
  :page-imagesdir: {{page.images.dir}}
35
36
  :wikipedia-article: https://en.wikipedia.org/wiki/Geography_of_Minneapolis
36
37
 
@@ -45,8 +46,17 @@ and how to use it.
45
46
  [role="clearfix mb-3"]
46
47
  excerpt__end
47
48
 
48
- // Page content
49
+ // Load Liquid procedures
50
+ // -----------------------------------------------------------------------------
51
+ {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
52
+
53
+ // Load page attributes
49
54
  // -----------------------------------------------------------------------------
55
+ {% include {{load_attributes}} scope="none" %}
56
+
57
+
58
+ // Page content
59
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50
60
  [[readmore]]
51
61
  == Mimic GitHub Pages
52
62
 
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  title: Site generators
3
- tagline: open-source tools
4
- description: Top open-source site generators
3
+ tagline: OpenSource tools
4
+ description: Top Open Source site generators
5
5
 
6
6
  date: 2019-05-01 00:00:00
7
7
  series:
@@ -9,9 +9,9 @@ adsense: false
9
9
  image: /assets/images/modules/attics/building-blocks-1920x1280-bw.jpg
10
10
 
11
11
  tags: [ Jekyll, Generators ]
12
- index: [ Jekyll, Top, Open, Source, Static, Site, Generators ]
13
- categories: []
12
+ categories: [ Featured ]
14
13
 
14
+ toc: true
15
15
  regenerate: false
16
16
 
17
17
  resources: []
@@ -32,28 +32,34 @@ resource_options:
32
32
  href: https://unsplash.com/@ryanquintal/portfolio
33
33
  ---
34
34
 
35
- // NOTE: General Asciidoc page attributes settings
36
- // -----------------------------------------------------------------------------
35
+ // Page Initializer
36
+ // =============================================================================
37
+ // Enable the Liquid Preprocessor
37
38
  :page-liquid:
38
39
 
39
- // Additional Asciidoc page attributes goes here
40
+ // Set page (local) attributes here
40
41
  // -----------------------------------------------------------------------------
41
- // :page-imagesdir: {{page.images.dir}}
42
+ // :page--attr: <attr-value>
42
43
 
43
44
  // Place an excerpt at the most top position
44
45
  // -----------------------------------------------------------------------------
45
- People quite often ask, if static websites make sense for anything beyond a
46
- one-page website. Some other see in static websites the stone age of the
47
- World Wide Web. What's about static websites today? What's achiveable?
48
-
49
- This article highlights top open source projects, in many different programming
50
- languages. Have a look what's going on the market.
46
+ This article highlights top OpenSource projects, in many different
47
+ programming languages. Have a look what's going on the market.
51
48
 
52
49
  [role="clearfix mb-3"]
53
50
  excerpt__end
54
51
 
55
- // Page content
52
+ // Load Liquid procedures
53
+ // -----------------------------------------------------------------------------
54
+ {% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
55
+
56
+ // Load page attributes
56
57
  // -----------------------------------------------------------------------------
58
+ {% include {{load_attributes}} scope="none" %}
59
+
60
+
61
+ // Page content
62
+ // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
57
63
  [[readmore]]
58
64
  == Static Site Generators
59
65
 
@@ -66,31 +72,34 @@ That means fetching the content from a database to pass them over to a template
66
72
  system for adding the required structure information (e.g. CSS styles).
67
73
  This means each page is assembled on demand.
68
74
 
69
- For many, many websites dynamic page generation is completely unnecessary and
75
+ === Is an CMS needed?
76
+
77
+ For many, many websites dynamic page generation is entirely unnecessary and
70
78
  adds unwanted risks in terms of complexity, performance losses and security
71
79
  issues. After all, the content of most websites changes only, when the content
72
- authors makes changes.
80
+ authors make changes.
73
81
 
74
- Why a hell should a web page always assembled on demand if there are no
82
+ Why the hell should a web page always assembled on demand if there are no
75
83
  changes?
76
84
 
77
85
  NOTE: To be fair, most CMS are providing caching systems for web pages to
78
- prevent unnessesary creation processes. It is not easy to implement such
79
- a caching system and in the very end, it adds the next level of complexity.
86
+ prevent unnecessary creation processes. It is not easy to implement such
87
+ a caching strategy, and in the very end, it adds the next level of
88
+ complexity.
80
89
 
81
- A Static Site Generator takes a different approach and generate all the pages
82
- of the website upfront. That does not nessesarily mean, that a static website
83
- is always generated from the scratch. Modern generators support a so-called
90
+ A Static Site Generator takes a different approach and generates all the pages
91
+ of the website upfront. That does not necessarily mean that a static website
92
+ is always built from scratch. Modern generators support a so-called
84
93
  incremental build; like Jekyll does. When there are changes detected to the
85
- content, only selected pages are rebuild.
94
+ content, only selected pages will rebuild.
86
95
 
87
96
  This means overall, statically build web pages having no moving parts in the
88
97
  deployed website. This results in browser-side caching only, the performance
89
- goes up and static sites are far more secure because they are build already.
98
+ goes up, and static sites are far more secure because they build already.
90
99
 
91
- To find out what Open Source Static Site Generators are available today and
92
- their ranking in terms of popularity go for StaticGen You'll will find the
93
- most complete list of generators!
100
+ To find out what OpenSource Static Site Generators are available today and
101
+ their ranking in terms of popularity go for StaticGen You'll find the most
102
+ complete list of generators!
94
103
 
95
104
  Check https://www.staticgen.com[StaticGen].
96
105