j1-template 2021.0.12 → 2021.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/themes/j1/blocks/footer/boxes/legal_statements.proc +4 -0
- data/_includes/themes/j1/layouts/content_generator_blog_archive.html +34 -12
- data/_includes/themes/j1/layouts/content_generator_post.html +7 -5
- data/_includes/themes/j1/modules/connectors/ad/google-adsense.html +1 -1
- data/_includes/themes/j1/modules/connectors/ads +1 -1
- data/_includes/themes/j1/modules/connectors/analytic/google-analytics-legacy.html +36 -0
- data/_includes/themes/j1/modules/connectors/analytic/google-analytics.html +1 -1
- data/_includes/themes/j1/modules/connectors/analytics +2 -3
- data/_includes/themes/j1/modules/connectors/comment/disqus.html +1 -1
- data/_includes/themes/j1/modules/navigator/generator.html +6 -6
- data/_includes/themes/j1/procedures/posts/create_series_header.proc +2 -0
- data/_layouts/default.html +11 -1
- data/assets/data/authclient.html +1 -1
- data/assets/data/carousel.json +1 -1
- data/assets/data/fam.html +2 -2
- data/assets/data/galleries.json +2 -2
- data/assets/data/gallery_customizer.html +2 -2
- data/assets/data/menu.html +15 -17
- data/assets/themes/j1/adapter/js/asciidoctor.js +166 -0
- data/assets/themes/j1/adapter/js/carousel.js +30 -1
- data/assets/themes/j1/adapter/js/fam.js +8 -12
- data/assets/themes/j1/adapter/js/j1.js +71 -24
- data/assets/themes/j1/adapter/js/{jf_gallery.js → justifiedGallery.js} +9 -9
- data/assets/themes/j1/adapter/js/{gallery_customizer.js → justifiedGalleryCustomizer.js} +11 -11
- data/assets/themes/j1/adapter/js/logger.js +35 -23
- data/assets/themes/j1/adapter/js/mmenu.js +9 -4
- data/assets/themes/j1/adapter/js/navigator.js +14 -18
- data/assets/themes/j1/adapter/js/themer.js +32 -27
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.css +25 -7
- data/assets/themes/j1/core/css/themes/uno-light/bootstrap.min.css +1 -1
- data/assets/themes/j1/core/css/vendor.css +14 -2
- data/assets/themes/j1/core/css/vendor.min.css +1 -1
- data/assets/themes/j1/core/js/template.js +6 -6
- data/assets/themes/j1/core/js/template.js.map +1 -1
- data/assets/themes/j1/core/js/template.min.js +6 -6
- data/assets/themes/j1/core/js/template.min.js.map +1 -0
- data/assets/themes/j1/modules/lightbox/js/lightbox.js +1 -1
- data/assets/themes/j1/modules/lightbox/js/lightbox.min.js +1 -1
- data/assets/themes/j1/modules/log4javascript/docs/backwardsincompatibilities.html +90 -0
- data/assets/themes/j1/modules/log4javascript/docs/distribution.html +87 -0
- data/assets/themes/j1/modules/log4javascript/docs/index.html +190 -0
- data/assets/themes/j1/modules/log4javascript/docs/lite.html +182 -0
- data/assets/themes/j1/modules/log4javascript/docs/manual.html +3217 -0
- data/assets/themes/j1/modules/log4javascript/docs/manual_lite.html +383 -0
- data/assets/themes/j1/modules/log4javascript/docs/quickstart.html +230 -0
- data/assets/themes/j1/modules/log4javascript/docs/whatsnew.html +86 -0
- data/assets/themes/j1/modules/log4javascript/js/log4javascript.js +5826 -0
- data/assets/themes/j1/modules/{util/js/log4javascript.js → log4javascript/js/log4javascript.min.js} +17 -0
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.js +9 -4
- data/assets/themes/j1/modules/themeSwitcher/js/switcher.min.js +1 -1
- data/exe/j1 +1 -1
- data/lib/j1/commands/generate.rb +32 -9
- data/lib/{patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.6 → j1/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.7}/fastfilereaderext.so +0 -0
- data/lib/{patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.6 → j1/patches/rubygems/eventmachine-1.2.7-x64-mingw32/lib/2.7}/rubyeventmachine.so +0 -0
- data/lib/j1/patches/rubygems/execjs-2.7.0/lib/execjs/external_runtime.rb +246 -0
- data/lib/j1/version.rb +1 -1
- data/lib/j1_app.rb +1 -1
- data/lib/j1_app/j1_auth_manager/auth_manager.rb +8 -2
- data/lib/j1_app/j1_site_manager/static_site.no-cross-origin.rb +94 -0
- data/lib/j1_app/j1_site_manager/static_site.rb +13 -11
- data/lib/starter_web/Gemfile +21 -15
- data/lib/starter_web/_config.yml +7 -48
- data/lib/starter_web/_data/_defaults/j1_config.yml +460 -0
- data/lib/starter_web/_data/_defaults/private.yml +156 -0
- data/lib/starter_web/_data/_defaults/resources.yml +626 -325
- data/lib/starter_web/_data/apps/defaults/{justified_gallery.yml → justifiedGallery.yml} +2 -2
- data/lib/starter_web/_data/apps/defaults/{gallery_customizer.yml → justifiedGalleryCustomizer.yml} +0 -0
- data/lib/starter_web/_data/apps/defaults/{light_gallery.yml → lightGallery.yml} +0 -0
- data/lib/starter_web/_data/apps/{justified_gallery.yml → justifiedGallery.yml} +7 -7
- data/lib/starter_web/_data/apps/{gallery_customizer.yml → justifiedGalleryCustomizer.yml} +0 -0
- data/lib/starter_web/_data/apps/{light_gallery.yml → lightGallery.yml} +0 -0
- data/lib/starter_web/_data/blocks/banner.yml +18 -30
- data/lib/starter_web/_data/blocks/footer.yml +15 -3
- data/lib/starter_web/_data/blocks/panel.yml +4 -6
- data/lib/starter_web/_data/builder/blog_navigator.yml +4 -4
- data/lib/starter_web/_data/j1_config.yml +8 -7
- data/lib/starter_web/_data/modules/authentication.yml +11 -100
- data/lib/starter_web/_data/modules/defaults/log4javascript.yml +37 -40
- data/lib/starter_web/_data/modules/defaults/quicksearch.yml +5 -24
- data/lib/starter_web/_data/modules/fam.yml +13 -2
- data/lib/starter_web/_data/modules/log4javascript.yml +11 -83
- data/lib/starter_web/_data/modules/navigator_menu.yml +26 -7
- data/lib/starter_web/_data/modules/quicksearch.yml +5 -3
- data/lib/starter_web/_data/plugins/defaults/paginator.yml +15 -12
- data/lib/starter_web/_data/plugins/paginator.yml +5 -3
- data/lib/starter_web/_data/private.yml +29 -57
- data/lib/starter_web/_data/private@default.yml +119 -0
- data/lib/starter_web/_data/private@localhost.yml +156 -0
- data/lib/starter_web/_data/resources.yml +33 -16
- data/lib/starter_web/_data/utilities/defaults/util_srv.yml +49 -3
- data/lib/starter_web/_data/utilities/util_srv.yml +8 -65
- data/lib/starter_web/_includes/attributes.asciidoc +10 -6
- data/lib/starter_web/_plugins/asciidoctor-extensions/callout.rb +47 -5
- data/lib/starter_web/_plugins/asciidoctor-extensions/conum.rb +28 -1
- data/lib/starter_web/_plugins/lunr_index.rb +24 -5
- data/lib/starter_web/assets/images/collections/blog/featured/dynamic-web-access.png +0 -0
- data/lib/starter_web/assets/images/collections/blog/featured/jamstack-generators.gif +0 -0
- data/lib/starter_web/assets/images/collections/blog/featured/jamstack-generators.jpg +0 -0
- data/lib/starter_web/assets/images/collections/blog/featured/static-web-access.png +0 -0
- data/lib/starter_web/assets/images/modules/attics/leon-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/machine-generator-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/markus-spiske4-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/icons/j1/j1-256x256.gif +0 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/0000-00-00-welcome-to-j1.adoc.erb +45 -46
- data/lib/starter_web/collections/posts/public/featured/_posts/{2020-06-01-about-cookies.adoc → 2020-01-01-about-cookies.adoc} +42 -40
- data/lib/starter_web/collections/posts/public/featured/_posts/{2020-05-01-top-site-generators.adoc → 2021-03-01-site-generators.adoc} +58 -31
- data/lib/starter_web/collections/posts/public/featured/_posts/2021-03-03-about-j1.adoc +125 -0
- data/lib/starter_web/collections/posts/public/featured/_posts/_includes/attributes.asciidoc +4 -0
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc +8 -5
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-02-post-test-series.adoc +8 -5
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-03-post-test-series.adoc +8 -5
- data/lib/starter_web/collections/posts/public/series/_posts/2020-01-04-post-test-series.adoc +8 -5
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-20-minneapolis.adoc +2 -2
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-24-narcisse-snake-dens.adoc +2 -2
- data/lib/starter_web/collections/posts/public/wikipedia/_posts/2016-11-26-columbia-river.adoc +2 -2
- data/lib/starter_web/dot.gitattributes +1 -1
- data/lib/starter_web/dot.gitignore +5 -1
- data/lib/starter_web/package.json +3 -2
- data/lib/starter_web/pages/public/about/about_site.adoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/_templates/asciidoc-extensions/gallery.asciidoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/book/200_chapter.adoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/book/book.adoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/200_chapter.asciidoc +1 -1
- data/lib/starter_web/pages/public/asciidoc_skeletons/multi-document/multi.adoc +1 -1
- data/lib/starter_web/pages/public/blog/navigator/archive.html +9 -7
- data/lib/starter_web/pages/public/blog/navigator/archive/categoryview.html +9 -7
- data/lib/starter_web/pages/public/blog/navigator/archive/dateview.html +16 -11
- data/lib/starter_web/pages/public/blog/navigator/archive/tagview.html +9 -7
- data/lib/starter_web/pages/public/blog/navigator/index.html +10 -11
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_images.adoc +44 -47
- data/lib/starter_web/pages/public/learn/roundtrip/100_present_videos.adoc +20 -19
- data/lib/starter_web/pages/public/learn/roundtrip/200_typography.adoc +5 -1
- data/lib/starter_web/pages/public/learn/roundtrip/300_icon_fonts.adoc +38 -34
- data/lib/starter_web/pages/public/learn/roundtrip/400_asciidoc_extensions.adoc +37 -35
- data/lib/starter_web/pages/public/learn/roundtrip/410_bs_modals_extentions.adoc +15 -13
- data/lib/starter_web/pages/public/learn/roundtrip/420_responsive_tables_extensions.adoc +10 -8
- data/lib/starter_web/pages/public/learn/roundtrip/500_themes.adoc +29 -26
- data/lib/starter_web/pages/public/learn/roundtrip/600_quicksearch.adoc +50 -49
- data/lib/starter_web/pages/public/learn/roundtrip/_includes/documents/100_gistblock.asciidoc +1 -1
- data/lib/starter_web/pages/public/learn/where_to_go.adoc +43 -16
- data/lib/starter_web/pages/public/legal/en/100_copyright.adoc +114 -0
- data/lib/starter_web/pages/public/legal/en/200_impress.adoc +81 -0
- data/lib/starter_web/pages/public/legal/en/300_privacy.adoc +70 -48
- data/lib/starter_web/pages/public/legal/en/400_comment_policy.adoc +121 -0
- data/lib/starter_web/pages/public/panels/intro_panel/panel.adoc +78 -70
- data/lib/starter_web/pages/public/previewer/_includes/tables/rouge/300_supported_languages.asciidoc +1 -1
- data/lib/starter_web/pages/public/previewer/bootstrap_theme.adoc +161 -591
- data/lib/starter_web/pages/public/previewer/iframer.adoc +2 -1
- data/lib/starter_web/pages/public/previewer/justified_gallery.html +4 -4
- data/lib/starter_web/pages/public/previewer/md_color_palette.adoc +511 -0
- data/lib/starter_web/pages/public/previewer/mdi_icons_preview.adoc +10 -12
- data/lib/starter_web/pages/public/previewer/rouge.adoc +3 -3
- data/lib/starter_web/pages/public/previewer/twitter_emoji_preview.adoc +3 -3
- data/lib/starter_web/utilsrv/_defaults/package.json +13 -9
- data/lib/starter_web/utilsrv/package.json +6 -2
- data/lib/starter_web/utilsrv/server.js +228 -55
- metadata +48 -210
- data/lib/starter_web/_data/_defaults/j1_light_gallery.yml +0 -110
- data/lib/starter_web/_data/_defaults/template_settings.yml +0 -258
- data/lib/starter_web/_data/plugins/defaults/notebooks.yml +0 -61
- data/lib/starter_web/_data/plugins/notebooks.yml +0 -70
- data/lib/starter_web/assets/images/collections/blog/featured/staticgen.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/aditya-joshi-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/alex-holyoake-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/anaya-katlego-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/antonella-lombardi-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/antonino-visalli-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/banner/docker-1280x600-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/banner/jekyll.1200x600-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/banner/signpost-1920x800-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/banner/water-journal-1280x600.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/banner/write-1280x600-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/brandon-mowinkel-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/daniel-jensen-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/florian-olivo-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/giammarco-boscaro-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/go-up-1920x1280-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/ian-schneider-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/jason-rosewell-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/joel-filipe-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/lianhao-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/library-1920x1280-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/mae-mue-1920x1280-v.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/mae-mue-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/markus-spiske3-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/modules-apps-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/nicola-styles-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/no-time-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/nousnou-iwasaki-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/premium-1920x1280-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/responsive-text-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/robert-v-ruggiero-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/romain-vignes-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/spider-web-1920x1200-bw.jpg +0 -0
- data/lib/starter_web/assets/images/modules/attics/the-place-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/modules/icons/algolia/search-by-algolia.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/d1-256x256.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/d1-32x32.ico +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/d1-512x512.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/d1-64x64.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/d1.ico +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/favicon.ico +0 -0
- data/lib/starter_web/assets/images/modules/icons/d1/scalable/d1.svg +0 -2025
- data/lib/starter_web/assets/images/modules/icons/netlify/nf-logo.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/p1/favicon.ico +0 -0
- data/lib/starter_web/assets/images/modules/icons/p1/p1-256x256.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/p1/p1-32x32.ico +0 -0
- data/lib/starter_web/assets/images/modules/icons/p1/p1-512x512.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/p1/p1-64x64.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/p1/p1.ico +0 -0
- data/lib/starter_web/assets/images/modules/icons/p1/scalable/p1.svg +0 -2020
- data/lib/starter_web/assets/images/modules/icons/patreon/favicon-16x16.png +0 -0
- data/lib/starter_web/assets/images/modules/icons/patreon/favicon-32x32.png +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/000_browser_console-1280x600.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/001_smee_channel-1280x400.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/002_gh_repo_settings-1280x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/003_gh_webhook_settings-1280x1000.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/004_gh_webhook_settings-post-1280x600.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/005_smee_channel_ping_receive-1280x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/006_gh_redeliver_payload-1280x900.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/007_receive_redelivered_payload-1280x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/000_browser_console.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/000_smee_channel.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/002_gh_repo-settings.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/003_gh_webhook_settings.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/004_gh_webhook_settings-post.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/005_smee_channel_ping_received.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/006_gh_redeliver_payload.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/007_receive_redelivered_payload.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/base/webhook_flow.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/flows/webhook_flow-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/j1_webhooks/scaleable/webhook_flow.svg +0 -432
- data/lib/starter_web/assets/images/pages/j1_webhooks/uml/auth_mgmr_signin_request_flow.uxf +0 -632
- data/lib/starter_web/assets/images/pages/j1_webhooks/uml/webhook_flow.uxf +0 -648
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/get-started-1920x1280-bw.jpg +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/130_layout_inheritance.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/content_inheritance.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/content_inheritance_thumb.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/html_layout.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/j1-quickstart-windows.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/j1-template-theme.jpg +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/j1_layout.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/jekyll-minima-theme.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/lane_inheritance.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/intro/layout_inheritance.png +0 -0
- data/lib/starter_web/assets/images/pages/kickstarter/web_in_a_day/preparations/msys_installation.jpg +0 -0
- data/lib/starter_web/assets/images/pages/log4j/apache-log4j-logo.png +0 -0
- data/lib/starter_web/assets/images/pages/log4r/code-1920x600.jpg +0 -0
- data/lib/starter_web/assets/images/pages/log4r/log4r-logo.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_000.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_001.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_002.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_003.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_004.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_005.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_006.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_007.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_008.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_009.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_010.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_011.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_012.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_013.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_014.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_015.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_016.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_017.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_018.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_019.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_020.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_021.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_022.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_023.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_024.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_025.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_026.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_027.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_028.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_029.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_030.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_031.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_032.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_033.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_034.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_035.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_036.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_037.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_038.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_039.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_040.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_041.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_042.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_043.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_044.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_045.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_046.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_047.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_048.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_049.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_050.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_051.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_052.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_053.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_054.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_055.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_056.png +0 -0
- data/lib/starter_web/assets/images/pages/log_expert/image_057.png +0 -0
- data/lib/starter_web/assets/images/pages/material/apple-touch-icon.png +0 -0
- data/lib/starter_web/assets/images/pages/pen/jquery/jQuery-logo.png +0 -0
- data/lib/starter_web/assets/images/pages/pen/jquery/jquery-banner-1280x600.jpg +0 -0
- data/lib/starter_web/assets/images/pages/pen/jquery/jquery-banner-1920x800.jpg +0 -0
- data/lib/starter_web/assets/images/pages/pen/jquery/src/JQuery-Logo.svg +0 -122
- data/lib/starter_web/assets/images/pages/pen/jquery/src/banner.psd +0 -0
- data/lib/starter_web/assets/images/pages/winlogbeat/coordinate-map.png +0 -0
- data/lib/starter_web/assets/images/pages/winlogbeat/kibana-powershell.jpg +0 -0
- data/lib/starter_web/assets/images/pages/winlogbeat/option_ignore_outgoing.png +0 -0
- data/lib/starter_web/assets/images/pages/winlogbeat/winlogbeat-dashboard.png +0 -0
- data/lib/starter_web/assets/images/pages/writers_guide/1280px-PDCA_Process.png +0 -0
- data/lib/starter_web/assets/images/pages/writers_guide/annie-spratt-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/writers_guide/deming-cycle.png +0 -0
- data/lib/starter_web/assets/images/pages/writers_guide/humble-lamb-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/writers_guide/john-schnobrich-1920x1280.jpg +0 -0
- data/lib/starter_web/assets/images/pages/writers_guide/sigmund-1920x1280.jpg +0 -0
- data/lib/starter_web/pages/protected/site_search.adoc +0 -180
- data/lib/starter_web/pages/public/asciidoc_skeletons/book/book.pdf +1 -5439
- data/lib/starter_web/pages/public/legal/en/000_copyright.adoc +0 -93
- data/lib/starter_web/pages/public/legal/en/100_impress.adoc +0 -55
- data/lib/starter_web/pages/public/legal/en/200_terms_of_use.adoc +0 -53
- data/lib/starter_web/pages/public/legal/en/eu/cookie.policy.asciidoc +0 -50
@@ -1,16 +1,18 @@
|
|
1
1
|
---
|
2
2
|
title: Cookies
|
3
3
|
tagline: good to know
|
4
|
-
date: 2020-
|
4
|
+
date: 2020-01-01 00:00:00
|
5
5
|
|
6
|
-
tags: [ About, Cookies ]
|
7
6
|
categories: [ Featured ]
|
7
|
+
tags: [ About, Cookies ]
|
8
8
|
|
9
|
-
series:
|
10
|
-
adsense: false
|
9
|
+
series: false
|
11
10
|
image: /assets/images/modules/attics/cookies-1920x1200-bw.jpg
|
12
|
-
|
13
|
-
|
11
|
+
|
12
|
+
adsense: false
|
13
|
+
comments: false
|
14
|
+
advertising: false
|
15
|
+
toc: true
|
14
16
|
|
15
17
|
regenerate: false
|
16
18
|
|
@@ -47,10 +49,9 @@ resource_options:
|
|
47
49
|
|
48
50
|
// Place an excerpt at the most top position
|
49
51
|
// -----------------------------------------------------------------------------
|
50
|
-
Is it needed for visitors to know what cookies are about? No doubts,
|
51
|
-
requested to inform - in Europe for legal reasons. All users visiting
|
52
|
-
are bothered all the time to accept
|
53
|
-
of today. For good reasons?
|
52
|
+
Is it needed for visitors to know what cookies are about? No doubts, you're
|
53
|
+
requested to inform - in Europe for legal reasons. All users visiting websites
|
54
|
+
are bothered all the time to accept cookies. For good reasons?
|
54
55
|
|
55
56
|
[role="clearfix mb-3"]
|
56
57
|
excerpt__end
|
@@ -70,10 +71,10 @@ excerpt__end
|
|
70
71
|
// Include sub-documents
|
71
72
|
// -----------------------------------------------------------------------------
|
72
73
|
|
73
|
-
[[readmore]]
|
74
|
+
// [[readmore]]
|
74
75
|
== What are cookies technically
|
75
76
|
|
76
|
-
In short
|
77
|
+
In short: a cookie is a small piece of data that a website asks your
|
77
78
|
browser to store on your computer or mobile device. The cookie allows the
|
78
79
|
website to "remember" your actions or preferences over time. All modern
|
79
80
|
browsers support cookies, but users can set their browsers to decline them
|
@@ -88,35 +89,35 @@ General information storage::
|
|
88
89
|
Remember users' custom preferences
|
89
90
|
|
90
91
|
Support::
|
91
|
-
Help users complete tasks without
|
92
|
-
|
92
|
+
Help users complete tasks without re-entering information when browsing from
|
93
|
+
one page to another or when visiting the site later.
|
93
94
|
|
94
|
-
Track
|
95
|
-
Cookies can also be used for online
|
95
|
+
Track behavioral::
|
96
|
+
Cookies can also be used for online behavioral target advertising and to
|
96
97
|
show adverts relevant to something that the user searched for in the past.
|
97
|
-
The
|
98
|
+
The webserver supplying the webpage can store a cookie on the user's
|
98
99
|
computer or mobile device.
|
99
100
|
|
100
|
-
All these cookies are called
|
101
|
-
cookies is through JavaScript code contained or referenced
|
102
|
-
Each time the user requests a new page, the
|
101
|
+
All these cookies are called HTTP header cookies. Another way of storing
|
102
|
+
cookies is through JavaScript code contained or referenced on that page.
|
103
|
+
Each time the user requests a new page, the webserver can receive the
|
103
104
|
values of the cookies it previously set and return the page with content
|
104
|
-
relating to these values. Similarly, JavaScript code
|
105
|
-
cookie belonging to its domain and
|
105
|
+
relating to these values. Similarly, JavaScript code can read a
|
106
|
+
cookie belonging to its domain and act accordingly.
|
106
107
|
|
107
108
|
.How are they used
|
108
109
|
[NOTE]
|
109
110
|
====
|
110
111
|
The web server supplying the webpage can store a cookie on the user's
|
111
|
-
computer or mobile device. An external web server that manages files
|
112
|
-
or referenced in the
|
113
|
-
cookies are called
|
114
|
-
through JavaScript code contained or referenced
|
112
|
+
computer or mobile device. An external web server that manages files
|
113
|
+
included or referenced in the web page can store cookies. All these
|
114
|
+
cookies are called HTTP header cookies. Another way of storing cookies
|
115
|
+
is through JavaScript code contained or referenced on that page.
|
115
116
|
|
116
117
|
Each time the user requests a new page, the web server can receive the
|
117
118
|
values of the cookies it previously set and return the page with content
|
118
|
-
relating to these values. Similarly, JavaScript code
|
119
|
-
cookie belonging to its domain and
|
119
|
+
relating to these values. Similarly, JavaScript code can read a
|
120
|
+
cookie belonging to its domain and act accordingly.
|
120
121
|
====
|
121
122
|
|
122
123
|
== Types of cookies
|
@@ -124,7 +125,7 @@ cookie belonging to its domain and perform an action accordingly.
|
|
124
125
|
HTTP cookies are essential to the modern Internet but potentially a
|
125
126
|
vulnerability to your privacy. As a necessary part of web browsing, cookies
|
126
127
|
help web developers give you more personal, convenient website visits.
|
127
|
-
Cookies let websites remember you, your website logins, shopping carts and
|
128
|
+
Cookies let websites remember you, your website logins, shopping carts, and
|
128
129
|
more. But they can also be a treasure trove of private info for criminals
|
129
130
|
to spy on.
|
130
131
|
|
@@ -152,37 +153,38 @@ period of time.
|
|
152
153
|
Cookies classified by the *domain* to which it belongs, are either of:
|
153
154
|
|
154
155
|
First-party cookie::
|
155
|
-
First-party cookie cookies are set by the
|
156
|
-
and share the *same domain* you're
|
156
|
+
First-party cookie cookies are set by the webserver of the visited page
|
157
|
+
and share the *same domain* you're visiting. These are generally safer, as
|
157
158
|
long as users are browsing reputable websites or ones that have not been
|
158
159
|
compromised.
|
159
160
|
|
160
161
|
Third-party cookies::
|
161
162
|
Third-party cookies are stored by a *different* domain to the visited page.
|
162
|
-
This can happen when the webpage references a
|
163
|
+
This can happen when the webpage references a file located outside its domain.
|
163
164
|
Third-party cookies let advertisers or analytics companies track the user's
|
164
165
|
browsing history across the web on *any* sites that contain their ads.
|
165
166
|
|
167
|
+
|
166
168
|
== Security aspects on using cookies
|
167
169
|
|
168
|
-
Without cookies the web would not work as it does today. However, since the
|
169
|
-
mid 90ies when cookies were invented, the web changed quite a lot and so did
|
170
|
-
the attack methods on web applications; as mentioned the
|
170
|
+
Without cookies, the web would not work as it does today. However, since the
|
171
|
+
mid 90ies when cookies were invented, the web changed quite a lot, and so did
|
172
|
+
the attack methods on web applications; as mentioned, the Internet is not a
|
171
173
|
friendly place.
|
172
174
|
|
173
|
-
A well-known attack method is known as Cross
|
175
|
+
A well-known attack method is known as Cross-Site Request Forgery or short
|
174
176
|
*CSRF*. CSRF is an attack, a criminal act, that forces an end user to execute
|
175
|
-
unwanted actions.
|
176
|
-
not generally *unsafe
|
177
|
+
unwanted actions. A cookie may play a *role* in such scenarios, but they are
|
178
|
+
not generally *unsafe* if you want, you can read more about that on the
|
177
179
|
CRSF Page on {url-owasp-attacks--csrf}[OWASP, {browser-window--new}].
|
178
180
|
|
179
181
|
== How to control cookies
|
180
182
|
|
181
183
|
Users can take control, used or *not* used, or delete cookies. For more
|
182
184
|
details, see {url-about-cookies--home}[AboutCookies]. You can delete
|
183
|
-
all cookies that are already on your computer and you can set most
|
185
|
+
all cookies that are already on your computer, and you can set most
|
184
186
|
browsers to prevent them from being placed.
|
185
187
|
|
186
188
|
If you do this, however, you may have to manually adjust some preferences
|
187
|
-
every time you visit a site and some services and functionalities may not
|
189
|
+
every time you visit a site, and some services and functionalities may not
|
188
190
|
work.
|
@@ -1,19 +1,22 @@
|
|
1
1
|
---
|
2
|
-
title:
|
3
|
-
tagline: top
|
4
|
-
date:
|
2
|
+
title: Site Generators
|
3
|
+
tagline: top open source tools
|
4
|
+
date: 2021-03-01 00:00:00
|
5
5
|
|
6
|
-
tags: [ Jekyll, Generators ]
|
7
6
|
categories: [ Featured ]
|
7
|
+
tags: [ Jekyll, Generators ]
|
8
8
|
|
9
|
-
series:
|
10
|
-
adsense: false
|
9
|
+
series: false
|
11
10
|
image: /assets/images/modules/attics/machine-generator-1920x1280.jpg
|
11
|
+
|
12
|
+
adsense: false
|
13
|
+
comments: false
|
14
|
+
advertising: false
|
12
15
|
toc: true
|
13
16
|
|
14
17
|
regenerate: false
|
15
18
|
|
16
|
-
resources: []
|
19
|
+
resources: [ lightbox ]
|
17
20
|
resource_options:
|
18
21
|
- attic:
|
19
22
|
padding_top: 400
|
@@ -43,10 +46,11 @@ resource_options:
|
|
43
46
|
// Place an excerpt at the most top position
|
44
47
|
// -----------------------------------------------------------------------------
|
45
48
|
This article highlights top OpenSource projects providing static site
|
46
|
-
generators
|
47
|
-
them. Have a look if
|
49
|
+
generators in many different programming languages. And Jekyll is only
|
50
|
+
one of them. Have a look if a full-blown CMS is (really) needed for your
|
51
|
+
project!
|
48
52
|
|
49
|
-
[role="clearfix mb-3"]
|
53
|
+
// [role="clearfix mb-3"]
|
50
54
|
excerpt__end
|
51
55
|
|
52
56
|
// Load Liquid procedures
|
@@ -55,7 +59,7 @@ excerpt__end
|
|
55
59
|
|
56
60
|
// Load page attributes
|
57
61
|
// -----------------------------------------------------------------------------
|
58
|
-
{% include {{load_attributes}} scope="
|
62
|
+
{% include {{load_attributes}} scope="all" %}
|
59
63
|
|
60
64
|
|
61
65
|
// Page content
|
@@ -65,22 +69,32 @@ excerpt__end
|
|
65
69
|
// -----------------------------------------------------------------------------
|
66
70
|
|
67
71
|
[[readmore]]
|
68
|
-
==
|
72
|
+
== Dynamic page access
|
69
73
|
|
70
|
-
[role="mb-3"]
|
71
|
-
image::/assets/images/collections/blog/featured/markus-spiske-2.jpg[{{page.title}}]
|
74
|
+
// [role="mb-3"]
|
75
|
+
// image::/assets/images/collections/blog/featured/markus-spiske-2.jpg[{{page.title}}]
|
76
|
+
|
77
|
+
A typical CMS-driven website works by building each and every page
|
78
|
+
*dynamically*. That means fetching the content from a database to pass them
|
79
|
+
over to a template system (engine) to load the page content, adding the
|
80
|
+
required structure information (e.g., CSS styles) and Javascript components if
|
81
|
+
needed. This means every page is assembled *on demand*.
|
72
82
|
|
73
|
-
|
74
|
-
|
75
|
-
system for adding the required structure information (e.g. CSS styles).
|
76
|
-
This means each page is assembled on demand.
|
83
|
+
.Accessing scheme for a CMS (dynamic web)
|
84
|
+
lightbox::kickstart-wiad--dynamic-web-access[ 800, {data-kickstart-wiad--dynamic-web-access} ]
|
77
85
|
|
78
|
-
|
86
|
+
callout::1["Web Browser"]
|
87
|
+
callout::2["Web Server"]
|
88
|
+
callout::3["Rendering Engine (e.g. PHP-based)"]
|
89
|
+
callout::4["Database (e.g. MySQL, Postgres)"]
|
90
|
+
callout::5["Static content (Images, Videos, JS- and CSS files) and Caches", ml-2 mb-3]
|
79
91
|
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
92
|
+
== Is a CMS needed?
|
93
|
+
|
94
|
+
For many websites, dynamic page generation is entirely unnecessary and
|
95
|
+
adds unwanted risks in terms of complexity, performance losses, and security
|
96
|
+
issues. After all, the content of most websites changes, when the content
|
97
|
+
authors make changes. Why the hell should a web page always assemble on
|
84
98
|
demand if there are no changes?
|
85
99
|
|
86
100
|
NOTE: To be fair, most CMS are providing caching systems for web pages to
|
@@ -89,16 +103,29 @@ a caching strategy, and in the very end, it adds the next level of
|
|
89
103
|
complexity.
|
90
104
|
|
91
105
|
A Static Site Generator takes a different approach and generates all the pages
|
92
|
-
of the website upfront
|
106
|
+
of the website *upfront*. That does not necessarily mean that a static website
|
93
107
|
is always built from scratch. Modern generators support a so-called
|
94
|
-
incremental build
|
108
|
+
incremental build, as does. When there are changes detected to the
|
95
109
|
content, only selected pages will rebuild.
|
96
110
|
|
97
|
-
|
98
|
-
|
99
|
-
|
111
|
+
.Accessing scheme for a static web
|
112
|
+
lightbox::kickstart-wiad--static-web-access[ 800, {data-kickstart-wiad--static-web-access} ]
|
113
|
+
|
114
|
+
callout::1["Web Browser"]
|
115
|
+
callout::2["Web Server"]
|
116
|
+
callout::3["Server-side rendered (prepared) static content", ml-2 mb-3]
|
117
|
+
|
118
|
+
== Statically build web pages
|
119
|
+
|
120
|
+
Overall, statically build web pages having no moving parts in the deployed
|
121
|
+
website. This results in browser-side caching only, the performance
|
122
|
+
goes up, and static sites are far more secure because they *build already*.
|
100
123
|
To find out what OpenSource Static Site Generators are available today and
|
101
|
-
their ranking in terms of popularity go for
|
102
|
-
|
124
|
+
their ranking in terms of popularity, go for _Jamstack_. You'll find a
|
125
|
+
comprehensive list of staic site generators used today.
|
126
|
+
|
127
|
+
Check popular static site generators at {url-jamstack--generators}[Jamstack, {browser-window--new}]!
|
103
128
|
|
104
|
-
|
129
|
+
// .Current ratings at Jamstack (March 2021)
|
130
|
+
[role="mb-3"]
|
131
|
+
image::/assets/images/collections/blog/featured/jamstack-generators.gif["jamstack-generators"]
|
@@ -0,0 +1,125 @@
|
|
1
|
+
---
|
2
|
+
title: J1 Template
|
3
|
+
tagline: first version is out
|
4
|
+
date: 2021-03-03 00:00:00
|
5
|
+
|
6
|
+
categories: [ Featured ]
|
7
|
+
tags: [ About, J1 ]
|
8
|
+
|
9
|
+
series: false
|
10
|
+
image: /assets/images/modules/attics/runner-1920x1200.jpg
|
11
|
+
|
12
|
+
adsense: false
|
13
|
+
comments: false
|
14
|
+
advertising: false
|
15
|
+
fam_menu_id: default
|
16
|
+
toc: false
|
17
|
+
|
18
|
+
regenerate: false
|
19
|
+
|
20
|
+
resources: []
|
21
|
+
resource_options:
|
22
|
+
- attic:
|
23
|
+
padding_top: 400
|
24
|
+
padding_bottom: 50
|
25
|
+
opacity: 0.5
|
26
|
+
slides:
|
27
|
+
- url: /assets/images/modules/attics/runner-1920x1200.jpg
|
28
|
+
alt: Photo by Alex Holyoake on Unsplash
|
29
|
+
badge:
|
30
|
+
type: unsplash
|
31
|
+
author: Alex Holyoake
|
32
|
+
href: https://unsplash.com/@stairhopper
|
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
|
+
:badges-enabled: false
|
44
|
+
|
45
|
+
|
46
|
+
// Place an excerpt at the most top position
|
47
|
+
// -----------------------------------------------------------------------------
|
48
|
+
The template system was initially developed to create a simple but fully
|
49
|
+
configurable website creation toolset for document servers. Document servers
|
50
|
+
provide websites or other content formats like PDF, projects, software
|
51
|
+
documentation, or similar approaches.
|
52
|
+
|
53
|
+
[role="clearfix mb-3"]
|
54
|
+
excerpt__end
|
55
|
+
|
56
|
+
// Load Liquid procedures
|
57
|
+
// -----------------------------------------------------------------------------
|
58
|
+
{% capture load_attributes %}themes/{{site.template.name}}/procedures/global/attributes_loader.proc{%endcapture%}
|
59
|
+
|
60
|
+
// Load page attributes
|
61
|
+
// -----------------------------------------------------------------------------
|
62
|
+
{% include {{load_attributes}} scope="global" %}
|
63
|
+
|
64
|
+
|
65
|
+
// Page content
|
66
|
+
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
67
|
+
|
68
|
+
// Include sub-documents
|
69
|
+
// -----------------------------------------------------------------------------
|
70
|
+
|
71
|
+
ifeval::[{badges-enabled} == true]
|
72
|
+
{badge-j1--license} {badge-j1--version-latest} {badge-j1-gh--last-commit} {badge-j1--downloads}
|
73
|
+
endif::[]
|
74
|
+
|
75
|
+
// [[readmore]]
|
76
|
+
Many large today's companies like {url-docker--docs}[Docker, {browser-window--new}]
|
77
|
+
are using template-based systems to create their documentation sites. Or like
|
78
|
+
{url-oreilly-atlas--home}[O'Reilly Atlas, {browser-window--new}],
|
79
|
+
to provide a fully-featured writers platform for writing books or extensive
|
80
|
+
documentation.
|
81
|
+
|
82
|
+
All these platforms are technically different, but they share common ideas:
|
83
|
+
|
84
|
+
* the layout of all content (pages) is based on a standard skeleton but
|
85
|
+
separated from the content
|
86
|
+
* content is written using a neutral meta-language
|
87
|
+
* the final output is not predefined
|
88
|
+
* the result is automatically generated by engines (robots)
|
89
|
+
|
90
|
+
To make these real, a lot of things are to be managed. You can imagine.
|
91
|
+
The approaches of Docker or O'Reilly points to a possible solution: a template
|
92
|
+
system based on _Bootstrap_ for the CCS framework, _Jekyll_ and _Liquid_ for
|
93
|
+
the core engines, and _Asciidoc_ (Asciidoctor) for a neutral meta-language
|
94
|
+
writing content.
|
95
|
+
|
96
|
+
The next thought comes to my mind. Why developing a toolset for only
|
97
|
+
document servers? Documentation webs of today are complex websites. Some
|
98
|
+
features used for general web design may be not needed for documentation
|
99
|
+
systems, but a lot of components are required that are wanted in general:
|
100
|
+
|
101
|
+
* a powerful CSS and Javascript framework
|
102
|
+
* a modular approach for dynamic content and apps
|
103
|
+
* a configuration system to separate content from the layout and to automate
|
104
|
+
creation processes following the development pattern *MVC*
|
105
|
+
(https://blog.codinghorror.com/understanding-model-view-controller/[Model–View–Controller, {browser-window--new}])
|
106
|
+
|
107
|
+
A plan was made in 2016, based on Jekyll V3 and Bootstrap V3, to create a
|
108
|
+
template-based robot system that can be used for all types of websites, for
|
109
|
+
all standard formats to create digital content.
|
110
|
+
|
111
|
+
I was too optimistic about how long it would take to build such a system:
|
112
|
+
|
113
|
+
* easy to use by developers and non-technical people
|
114
|
+
* modular, powerful and stable
|
115
|
+
* supporting modern content design
|
116
|
+
* usable on common computer hardware, available to the public
|
117
|
+
* less in components, using well-known software
|
118
|
+
* entirely usable on small PCs locally as well as on powerful remote systems
|
119
|
+
on the Internet
|
120
|
+
|
121
|
+
It took me nearly four years. Now, in early 2021, I can present the first
|
122
|
+
version of J1 Template for the public. Hopefully, most of the objectives
|
123
|
+
are achieved.
|
124
|
+
|
125
|
+
Have fun!
|
@@ -18,6 +18,10 @@ end::tags[]
|
|
18
18
|
// DATA, local references to data elements (asciidoc extensions)
|
19
19
|
// -----------------------------------------------------------------------------
|
20
20
|
tag::data[]
|
21
|
+
|
22
|
+
:data-kickstart-wiad--static-web-access: "collections/blog/featured/static-web-access.png, Accessing scheme for a static web"
|
23
|
+
:data-kickstart-wiad--dynamic-web-access: "collections/blog/featured/dynamic-web-access.png, Accessing scheme for a CMS (dynamic web)"
|
24
|
+
|
21
25
|
end::data[]
|
22
26
|
|
23
27
|
// DOCUMENTS, local document resources (macro include::)
|
data/lib/starter_web/collections/posts/public/series/_posts/2020-01-01-post-test-series.adoc
CHANGED
@@ -4,14 +4,14 @@ tagline: testing series elements
|
|
4
4
|
date: 2020-01-01 00:00:00
|
5
5
|
description: >
|
6
6
|
|
7
|
-
tags: [ Post, Test ]
|
8
7
|
categories: [ Series ]
|
8
|
+
tags: [ Post, Test ]
|
9
9
|
|
10
10
|
series: test-series
|
11
11
|
adsense: false
|
12
12
|
comments: false
|
13
13
|
toc: true
|
14
|
-
exclude_from_search:
|
14
|
+
exclude_from_search: false
|
15
15
|
|
16
16
|
regenerate: false
|
17
17
|
|
@@ -39,9 +39,12 @@ resource_options:
|
|
39
39
|
|
40
40
|
// Place an excerpt at the most top position
|
41
41
|
// -----------------------------------------------------------------------------
|
42
|
-
Testing series elements.
|
43
42
|
|
44
|
-
|
43
|
+
This post is a *test series element*. Post series can help to split larger
|
44
|
+
posts into a group of smaller articles. This may helpful, if a large post
|
45
|
+
should be split into several *main chapters* but grouped together.
|
46
|
+
|
47
|
+
// [role="clearfix"]
|
45
48
|
excerpt__end
|
46
49
|
|
47
50
|
// Load Liquid procedures
|
@@ -59,7 +62,7 @@ excerpt__end
|
|
59
62
|
// Include sub-documents
|
60
63
|
// -----------------------------------------------------------------------------
|
61
64
|
|
62
|
-
[[readmore]]
|
65
|
+
// [[readmore]]
|
63
66
|
== The Extremes of Good and Evil
|
64
67
|
|
65
68
|
.Release Loeb Classical Library, Harvard University Press, edition, 1931
|