# ------------------------------------------------------------------------------ # J1: ~/_config.yml # Site specific configuration for J1 Template # # Product/Info: # https://jekyll.one # # Copyright (C) 2019 Juergen Adams # # J1 Template is licensed under the MIT License. # See: https://github.com/jekyll-one-org/j1_template/blob/master/LICENSE # # ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------ # About this configuration (used for J1 CC only) # about_config: title: Jekyll Site Configuration scope: General site settings location: _config.yml # ============================================================================== # 1. BUILD configuration # # ------------------------------------------------------------------------------ # # Set the environment data for the build # # A build specific configuration giFhighves all templates access to a # variable site.environment to use this to optionally include|exclude # certain content based on which environment is set. # # NOTE: # You can specify a Jekyll environment at build time. In the build # (or serve) arguments, you can specify a Jekyll environment and # value like: # # *nix: JEKYLL_ENV=production jekyll build # Windows: set JEKYLL_ENV=production & jekyll build # jekyll build # # The default value for JEKYLL_ENV is "development". Therefore if you # omit JEKYLL_ENV from the build arguments, the default value will be # JEKYLL_ENV=development. # # The Jekyll environment variable JEKYLL_ENV is accessible via the # Liquid variable "jekyll.environment". J1 template overwrites the site # variable "site.environment" with the value of the Liquid variable # "jekyll.environment" automatically - in other words: JEKYLL_ENV takes # PRECENDENCE over the site variable "site.environment" given with the # _config.yml file. # # ------------------------------------------------------------------------------ # # environment # ------------------------------------------------------------------------------ # Sets the build environment of the website # # values: development|test|production # default: development # environment: development # version # ------------------------------------------------------------------------------ # Sets the build environment of the web site. Do not change # anything here because version information is bumped-in by # the build process # version: 2019.4.11 # ============================================================================== # 2. THEME configuration # # ------------------------------------------------------------------------------ # # Set the (gem-based) theme and the (Bootrap) theme used for the site # # J1 Template is a so-called gem-based template for Jekyll. All components # for the template J1 (template core and template modules) are Ruby gem # managed by the Ruby bundler respectively by the GEM manager "gem". All # components are available public at RubyGems.org. # # # theme # ------------------------------------------------------------------------------ # Sets the name of the (gem-based) theme used for Jekyll # serve and build # # Note: Do not change anything here because (gem-based) theme name # information is bumped-in by the build process automatically # # default: j1_template # theme: j1_template # ------------------------------------------------------------------------------ # J1 Template configuration # Sets J1 Template specific configurations # # Note: # Parameter "theme" is used by Jekyll >= 3.2.0 for gem-based # templates. For that reason, the configuration parameter for # the J1 Template was changed to "template" to not conflict with # new versions of Jekyll. # # template.name # ------------------------------------------------------------------------------ # Sets the theme "path" of J1 Template for the ~/assets/themes # folder. To not conflict with other template systems, all # template assets for J1 Template are stored under the default # path "/assets/themes/j1". # # Note: # Do NOT change template.name to other values. # # default: j1 # # template.config # ------------------------------------------------------------------------------ # Sets the name of the J1 Template configuration file # # default: j1_config # template: name: j1 config: j1_config # ============================================================================== # 3. SITE configuration # # ------------------------------------------------------------------------------ # # Set language, coding and HTML document type (DOCTYPE) # # language # ------------------------------------------------------------------------------ # Sets the language used by the website. The parameter language # is used by Content-Language entity-header field (meta tag ) # that describes the natural language(s) of the intended audience # for the enclosed entity. This might helpful for robots|search # engines. # # Note: # This might not be equivalent to all the languages used within # the entity-body of the website but should describe the language # the language the site is using "overall". # See: https://www.w3.org/Protocols/rfc2616/rfc2616-sec7.html # for more details # # values: Content-Language tags # default: en # # coding # ------------------------------------------------------------------------------ # Sets the content coding scheme (character encoding for the # HTML documents) of the website. Used for the meta tag "charset". # # values: charset # default: UTF-8 # # doctype # ------------------------------------------------------------------------------ # Sets the HTML standard of the website. J1 template is using # HTML5, therefor the doctype is: # # values: HTML doc types # default: html # language: en coding: UTF-8 doctype: html # ------------------------------------------------------------------------------ # META data # Mainly to set the meta tags for the document section. # title # ------------------------------------------------------------------------------ # Sets the ... # # values: string # default: no default # # slogan # ------------------------------------------------------------------------------ # Sets the tag within the <head> section. # # values: string # default: no default # # description # ------------------------------------------------------------------------------ # Sets the meta tag for "description" # # values: string # default: no default # # keywords # ------------------------------------------------------------------------------ # Sets the meta tag for "keywords" # # values: string (comma separated) # default: no default # # author.name # ------------------------------------------------------------------------------ # Sets the meta tag for "author" # # values: string (comma separated) # default: no default # # robots.index # ------------------------------------------------------------------------------ # Controls spider|robots of search engines. Sets the meta # tag for "robots". If set to "false", the meta tag robots # is set to "noindex", if set to "true" the tag is set to # "index" # # values: boolean (true|false) # default: false # # robots.follow # ------------------------------------------------------------------------------ # Controls spider|robots of search engines. Sets the meta # tag for "robots". If set to "false", the meta tag robots # is set to "nofollow", if set to "true" the tag is set to # "follow". # # values: boolean (true|false) # default: false # title: J1 Template MDE slogan: Starter Web description: Made for Jekyll · Made for Your Web keywords: Jekyll, One, Template, Ruby, Asciidoctor, Asciidoc, Bootstrap, Javascript, JS, JS3, CSS, CSS3, HTML5, Material, Design author: name: username email: username@email.domain github: username twitter: username robots: index: false follow: true # ------------------------------------------------------------------------------ # BRAND configuration # Set the brand image and favicon brand: image: icons/j1/j1-512x512.png image_height: 64 text: Starter Web text_color: "#9E9E9E" # Set the favicon (located in the asset_path/images) and type # favicon: image: icons/j1/j1-32x32.ico type: image/ico # ============================================================================== # 4. JEKYLL specific site configuration # # ------------------------------------------------------------------------------ # # ------------------------------------------------------------------------------ # LOCATION configuration # Set uri, files and path specific configurations # ------------------------------------------------------------------------------ # URI configuration # For default, J1 is using "pretty" links (URLs) ofr ALL types # of conten (pages, posts, collections). For J1 Template the # permalink style (pretty): # # pretty: /:categories/:year/:month/:day/:title/ # # used for default. Read mor about permalinks for pages and # collections at: # # https://jekyllrb.com/docs/permalinks/#pages-and-collections # # All links are using an a trailing file extension of .html # for best support of various Web Servers with NO addtional # configuration needed. # # Note: The build-in Web server Ruby "Webrick" for Jekyll support # pretty "links" out of the box. If other web servers are used to # serve the Web like Apache or Nginx, "extensionless" URLs are to # be enabled for those. See https://jekyllrb.com/docs/permalinks/ # for more details. # # Note: For development, respectively "live-reload" functionality, # webpack-dev-server is used. The build-in Web server "Express" # for Webpack does *NOT* support "pretty links" out of the box. # # Note: The permalink style can individualy configured by # frontmatter variables. It is highly recommended to use a # "pretty style" for individual permalinks as well. For that # reason, the permalink should always have a trailing backslash. # # See: https://jekyllrb.com/docs/permalinks/#template-variables # permalink: pretty # If your site has set a CNAME (pages.github.com), set the custom # domain http|s://your-site.domain here. Accessible in Liquid as # "site.url". For the development environment there is an EXCEPTION: # if you are running jekyll serve in a development environment, # site.url will be set to the value of host, port. This defaults to # url: http://localhost:4000. # url: "http://localhost:40000" # The subpath of your site, e.g. /blog/. Used in conjunction with # site.url (see above) when you want a link to something with the # full URL to it. # baseurl: "" # TODO: Following parameters should moved to header or panel that uses # these values (production_url, download_url, base_path) # #production_url: http://jekyll.one #download_url: http://jekyll.one/downloads # The production_url is only used when full-domain names are needed # such as sitemap.txt. For most places will/should use base_path to # make the URLs. # base_path: "" # ------------------------------------------------------------------------------ # TODO: Following parameters should moved to the components that uses # these values (protocol, host, port) # Base hostname and protocol for the site # # Defaults: # protocol: http # host: localhost | 0.0.0.0 # port: 4000 # timezone: Europe/Berlin # encoding: UTF-8 # protocol: http host: localhost port: 4000 timezone: Europe/Berlin encoding: UTF-8 detach: false show_dir_listing: false # ------------------------------------------------------------------------------ # PATH configuration # Global folder configuration where Jekyll will read files from # # Defaults: # source: . # destination: _site # source: . destination: _site plugins_dir: _plugins layouts_dir: _layouts data_dir: _data includes_dir: _includes collections_dir: collections # ------------------------------------------------------------------------------ # FILES configuration # Set the files to include, exclude and ignore # include: [.htaccess] exclude: [ _cc_test_data, vendor, node_modules, "package*", ".sass-cache", ".vscode", ".idea", "*.ignore", "*.bat*", "*.sh", "*.tmp", "*.txt", "*.log", "*.ppt*", "*.zip", "*.7z", "*.a2p", "*.asciidoc", "History.markdown", "README.md", "changelog.md", "Rakefile", "Gemfile", "Guardfile", "Gemfile.lock", "yarn.lock" ] keep_files: [ ".git", ".gitignore", node_modules, "package*" ] safe: false strict_front_matter: false # ------------------------------------------------------------------------------ # SASS conversion options # # style, possible values: compact|compressed|expanded|nested # sass: sass_dir: _sass/scss style: expanded # ------------------------------------------------------------------------------ # WEBRICK customizations # You can provide custom headers for your site # # Note: Jekyll provides by default Content-Type and Cache-Control # response headers: one dynamic in order to specify the nature of # the data being served, the other static in order to disable # caching so that you don’t have to fight with Chrome’s aggressive # caching when you are in development mode. # webrick: headers: My-Header: My-Value # My-Other-Header: My-Other-Value # ------------------------------------------------------------------------------ # POSTS Management # Set the post articles to include, exclude and ignore # future: false show_drafts: false unpublished: false limit_posts: 10 # ------------------------------------------------------------------------------ # LIQUID template engine # liquid: error_mode: warn strict_filters: false # ------------------------------------------------------------------------------ # PLUGIN configuration # plugins: - asciidoctor # - asciidoctor-pdf - jekyll-asciidoc # - jekyll-algolia # - jekyll-feed # - jekyll-gist # - jekyll-sitemap # - jekyll-redirect-from - j1_paginator - jekyll-sass-converter # ------------------------------------------------------------------------------ # JEKYLL FEED # feed: path: /assets/data/atom.xml # ------------------------------------------------------------------------------ # MARKDOWN # # Note: # Option input/GFM turns on the recognition of Github Flavoured Markdown (GFM) # markdown: kramdown markdown_ext: markdown,md kramdown: input: GFM auto_ids: true footnote_nr: 1 entity_output: as_char toc_levels: 1..3 smart_quotes: lsquo,rsquo,ldquo,rdquo syntax_highlighter: rouge # ------------------------------------------------------------------------------ # ASCIIDOCTOR (Asciidoc plugin) # asciidoc_attributes: &asciidoc_attributes hardbreaks-option: source-highlighter: rouge icons: font imagesdir: /assets/images iconsdir: '{imagesdir}/icons/asciidoc' asciidoc: processor: asciidoctor require_front_matter_header: true ext: adoc asciidoctor: safe: unsafe template_dir: _templates attributes: *asciidoc_attributes # ------------------------------------------------------------------------------ # ALGOLIA Search (Instantsearch) # algolia: enabled: false application_id: your_application_id search_only_api_key: your_searchonly_api_key index_name: your_index_name extensions_to_index: [ adoc ] files_to_exclude: [] # ------------------------------------------------------------------------------ # AUTH Manager (j1_auth) # # If a site is started as an app, this transforms the web into an # Web Application based on Rack and Sinatra using the Omniauth # software stack for authentication to enable User Management # and Authentication services for secured private web sites. # # enabled # ------------------------------------------------------------------------------ # Enables or disables the Auth Manager services for the web. # If disabled, all pages are accessible without authentication. # # values: true|false # default: false # # ssl # ------------------------------------------------------------------------------ # Enforce SSL communication for the app. If you've got SSL # set up, ensure SSL is enforced. # # values: true|false # default: false # # provider # ------------------------------------------------------------------------------ # List of enabled OAuth providers to be used for the auth # service for authentication. The first provider in a list # is used for default. # # values: [disqus|github|facebook|patreon|twitter] # default: none # # whitelist # ------------------------------------------------------------------------------ # List of pages (and assets) skipped for authentication. # Values can be given as regular expressions. # # values: string # default: none # # ------------------------------------------------------------------------------ j1_auth: enabled: false ssl: false content: public: - \W*((?i)assets(?-i))\W* - \W*((?i)public(?-i))\W* protected: - \W*((?i)protected(?-i))\W* private: - \W*((?i)private(?-i))\W* providers: activated: [ disqus ] disqus: provider_url: https://disqus.com strategy: member scope: [] users: [ all ] permissions: [ protected, private ] data_fields: [] conditions: protected: enabled: true users: blacklist: [] private: enabled: true users: whitelist: [ all ] blacklist: [] # facebook: # provider_url: https://facebook.com # strategy: member # scope: [] # users: [ all ] # permissions: [ protected ] # data_fields: [] # conditions: # protected: # enabled: true # users: # whitelist: [ all ] # blacklist: [] # # github: # provider_url: https://github.com # strategy: member # scope: [] # users: [ all ] # permissions: [ protected ] # data_fields: [] # conditions: # protected: # enabled: true # users: # whitelist: [ all ] # blacklist: [] # # patreon: # provider_url: https://patreon.com # strategy: member # scope: [ users, pledges-to-me ] # users: [ all ] # permissions: [ protected, private ] # data_fields: [ # email, name, first_name, nickname, # amount_cents, created_at, declined_since # ] # conditions: # protected: # enabled: true # users: # blacklist: [] # private: # enabled: true # users: # whitelist: [ juergen_adams ] # blacklist: [] # payment: # activated: [ "Premium Content", "Value Content" ] # tiers: # - tier: # name: "Premium Content" # amount: 500, # state: paid # - tier: # name: "Value Content" # amount: 100, # state: paid # # twitter: # provider_url: https://twitter.com # strategy: member # scope: [] # users: [ all ] # permissions: [ protected ] # data_fields: [] # conditions: # protected: # enabled: true # users: # blacklist: [] # ------------------------------------------------------------------------------ # SAFEMODE # # If you want to use plugins when running Jekyll in safe mode, # you must add the gem to the whitelist # whitelist: - jekyll-asciidoc # ============================================================================== # 5. PAGE configuration # # ------------------------------------------------------------------------------ # # ------------------------------------------------------------------------------ # EXCERPT settings # excerpt_separator: excerpt__end # ------------------------------------------------------------------------------ # PAGINATION settings (Jekyll Paginate V2) # pagination: enabled: true permalink: /page:num/ per_page: 4 limit: 0 sort_field: date sort_reverse: true trail: before: 2 after: 2 # AUTOPAGE settings # autopages: enabled: false tags: enabled: false layouts: [ paginator/autopage_collections_tags.html, paginator/autopage_tags.html ] categories: enabled: false layouts: [ paginator/autopage_category.html ] collections: enabled: false layouts: [ paginator/autopage_collection.html ] # ------------------------------------------------------------------------------ # COLLECTION settings # See: https://jekyllrb.com/docs/collections/#collections # collections: # ---------------------------------------------------------------------------- # Featured articles # featured: output: true permalink: /collections/:collection/:name/ # ---------------------------------------------------------------------------- # Book shelf # biography: output: true permalink: /collections/premium/:collection/:name/ fantasy: output: true permalink: /collections/premium/:collection/:name/ romance: output: true permalink: /collections/premium/:collection/:name/ # ------------------------------------------------------------------------------ # FRONTMATTER defaults # # Using the YAML Front Matter is a way the (individual) configuration # for post and pages can be specified. Very often, a lot of config # options are repeated on each and every post or page. Setting the # layout for each file, adding categories to a post, etc. might be # the same for the majority of your content. # # Instead of repeating this configuration each time a page is being # created, Jekyll provides a way to set these configuration items # as defaults in this site configuration (_config.yml). # defaults: # ---------------------------------------------------------------------------- # Pages # - name: Pages scope: path: pages type: pages values: layout: page author: J1 Team toc: true resources: toccer analytics: false advertising: false comments: false scrollbar: false indexed: true robots: index: true follow: true icons: family: MDI color: md-indigo size: 5x images: dir: /assets/images/pages # Resource options defined as ARRAYS cause issues with NetlifyCMS # resource_options: # - toccer: # collapseDepth: 2 # ---------------------------------------------------------------------------- # Posts # # ---------------------------------------------------------------------------- # PUBLIC - FEATURED # - name: PUBLIC - FEATURED scope: path: posts/public/featured/_posts type: posts values: layout: post scrollbar: false author: J1 Team toc: true resources: toccer analytics: false advertising: false comments: true robots: index: true follow: true icons: # category-icon: comment-text-outline family: MDI color: md-indigo size: 5x images: # category-image: img26.jpg dir: /assets/images/blog/featured # Resource options defined as ARRAYS cause issues with NetlifyCMS # resource_options: # - toccer: # collapseDepth: 2 # ---------------------------------------------------------------------------- # PRIVATE - FEATURED # - name: PRIVATE - FEATURED scope: path: posts/private/featured/_posts type: posts values: layout: post scrollbar: false author: J1 Team toc: true resources: toccer analytics: false advertising: false comments: true robots: index: true follow: true icons: # category-icon: comment-text-outline family: MDI color: md-indigo size: 5x images: # category-image: img26.jpg dir: /assets/images/blog/featured # ---------------------------------------------------------------------------- # SERIES # - name: SERIES scope: type: posts path: posts/premium/series/_posts values: layout: post scrollbar: false author: J1 Team toc: true resources: toccer analytics: false advertising: false comments: true robots: index: true follow: true icons: # category-icon: dots-horizontal-circle family: MDI color: md-indigo size: 5x images: # category-image: img26.jpg dir: /assets/images/blog/series # ---------------------------------------------------------------------------- # WIKIPEDIA # - name: WIKIPEDIA scope: type: posts path: posts/private/wikipedia/_posts values: layout: post scrollbar: false author: Wikipedia resources: toccer toc: true analytics: false advertising: false comments: false robots: index: false follow: false icons: # category-icon: wikipedia family: MDI color: md-indigo size: 5x images: category-image: dir: /assets/images/blog/wikipedia # ---------------------------------------------------------------------------- # Collections # # ---------------------------------------------------------------------------- # FEATURED Articles # - name: FEATURED Articles scope: type: featured path: collections/_featured values: layout: page analytics: false advertising: false scrollbar: false robots: index: true follow: true # ---------------------------------------------------------------------------- # BIOGRAPHY (Book Shelf) # - name: BIOGRAPHY (Book Shelf) scope: type: biography path: collections/_biography values: layout: page analytics: false advertising: false scrollbar: false robots: index: true follow: true # ---------------------------------------------------------------------------- # FANTASY (Book Shelf) # - name: FANTASY (Book Shelf) scope: type: fantasy path: collections/_fantasy values: layout: page analytics: false advertising: false scrollbar: false # ---------------------------------------------------------------------------- # ROMANCE (Book Shelf) # - name: ROMANCE (Book Shelf) scope: type: romance path: collections/_romance values: layout: page analytics: false advertising: false scrollbar: false robots: index: true follow: true # ============================================================================== # 6. LAYOUT configuration # # ------------------------------------------------------------------------------ # # ------------------------------------------------------------------------------ # COMPRESS (HTML) settings # # enabled # ------------------------------------------------------------------------------ # Enables|Disables the use of compress. # If enabled, all HTML pages generated for ALL layout # get compressed for production. To use compress, set # the ENVIRONMENT to production and the value of # compress_html.enable to "true". # # See http://jch.penibelst.de/ for more details. # # values: boolean (true|false) # default: false # # profile # ------------------------------------------------------------------------------ # A boolean value to turn on the profile mode. If true, the # layout creates a HTML table after the compressed content. The # table contains the file size in bytes during the compressing # steps. # # The profile table provides attributes for styling and reading. # The id ends with build’s timestamp to be unique enough. # # <table # id="compress_html_profile_YYYYMMDD" # class="compress_html_profile" # > # # This page itself is compressed in profile mode for analysis, # testing or educational purposes only. The table written to # the end of a page. # # NOTE: Never profile pages for public use. # # values: boolean (true|false) # default: false # # blanklines # ------------------------------------------------------------------------------ # A boolean value to turn on blanklines mode. This mode will # only remove lines consisting of whitespace and leave other # lines alone. # # values: boolean (true|false) # default: false # # clippings # ------------------------------------------------------------------------------ # An array of elements to clip whitespace around them. The # following elements may be safe to clip: # # - Metadata # - Sections # - Grouping content (except the pre element) # - Tabular data # # Use the shortcut all to clip all safe elements. # # Example: # # clippings: [div, p, ul, td, h1, h2] # # values: HTML tags|all # default: empty array # # comments # ------------------------------------------------------------------------------ # An array of exactly two comment tags to strip comments # enclosed by them. The first string must be the start tag, # the second must be the end tag. # # Example: # # comments: ["<!-- ", " -->"] # # values: comment tags # default: empty array # # startings # ------------------------------------------------------------------------------ # An array of elements with optional start tags. These start # tags will be >>removed<<. # # Example: # # startings: [html, head, body] # # values: HTML optional start tags # default: empty array # # endings # ------------------------------------------------------------------------------ # An array of elements with optional end tags. These end tags # will be >>removed<<. Use the shortcut all to remove all # optional endings. # # Example: # # endings: [p, li, td] # # values: HTML optional end tags # default: empty array # # ignore.envs # ------------------------------------------------------------------------------ # An array of environments given by ENV["JEKYLL_ENV"] # where the compress layout is IGNORED. This is useful # while developing a website the content should NOT # compressed. # # Example: # # envs: [development, test] # # values: HTML optional end tags # default: empty array # compress_html: enabled: true profile: false blanklines: false comments: [] startings: [] clippings: [] endings: [] ignore: envs: []