# Welcome to Jekyll!
#
# This config file is meant for settings that affect your whole blog, values
# which you are expected to set up once and rarely edit after that. If you find
# yourself editing this file very often, consider using Jekyll's data files
# feature for the data you need to update frequently.
#
# For technical reasons, this file is *NOT* reloaded automatically when you use
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
#
# If you need help with YAML syntax, here are some quick references for you:
# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
# https://learnxinyminutes.com/docs/yaml/
#
# Site settings
# These are used to personalize your new site. If you look in the HTML files,
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
# You can create any custom variable you would like, and they will be accessible
# in the templates via {{ site.myvariable }}.

title: Apache Karaf - The modulith runtime
email: dev@karaf.apache.org
description: >- # this means to ignore newlines until "baseurl:"
  Karaf provides modulith runtime for the enterprise, running on premise or on cloud.
  Focus on your business code and applications, Apache Karaf deals with the rest.
baseurl: ""
url: "https://karaf.apache.org"

# Build settings
plugins:
  - jekyll-feed
  - jekyll-seo-tag

# Exclude from processing.
exclude:
  - pom.xml
  - README.md
