# Copyright (c) 2024-2025 Stephan Hadan <stephan@hadan.de>

# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
# deal in the Software without restriction, including without limitation the
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
# sell copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:

# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.

# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.

# Project information
site_name: Stephan Hadan
site_url: https://stephan.hadan.de/
site_author: stephan@hadan.de (Stephan Hadan)
site_description: >-
  OSS enthusiast | Mac & beyond sysadmin | AI practitioner | Zero Trust advocate | Open Source > proprietary | Information security | Data protection | Digital sovereignty in Europe

# Repository
repo_url: https://git.hadan-it.com/web/stephan.hadan.de
repo_name: web/stephan.hadan.de

# Copyright
copyright: Copyright &copy; 2024-2025 Stephan Hadan

# Configuration
theme:
  name: material
  custom_dir: overrides
  palette:
    # - media: "(prefers-color-scheme: dark)"
    - scheme: slate
      accent: amber
      toggle:
        icon: material/brightness-2
        name: "Switch to light mode"
    # - media: "(prefers-color-scheme: light)"
    - scheme: default
      accent: deep purple
      toggle:
        icon: material/brightness-5
        name: "Switch to dark mode"
  font:
    text: Noto Sans
    code: Roboto Mono  
  logo: assets/logo.png
  favicon: images/favicon.png
  icon:
    repo: fontawesome/brands/git-alt
  language: de
  features:
    - announce.dismiss
    - content.code.copy
    - content.footnote.tooltips
    - navigation.instant
    - navigation.instant.progress
    - navigation.tracking
    - navigation.tabs
    - navigation.sections
    - navigation.expand
    - navigation.footer
    - navigation.path
    - navigation.instant.preview
    - toc.follow
    - toc.integrate
    - navigation.top
    - search.suggest
    - search.highlight
    - search.share

# Plugins
plugins:
  - search
  - privacy:
      enabled: !ENV [CI, false]
      assets_exclude: 
        - analytics.hadan-it.com/*
        - consentcdn.cookiebot.com/*
        - library.serviceinnovation.org/*
  - mkdocstrings:
      handlers:
        python:
          import:
            - https://docs.python.org/3/objects.inv
            - https://installer.readthedocs.io/en/stable/objects.inv
          options:
            show_bases: false
            show_source: true
            show_labels: false
            show_root_heading: true
  - optimize:
      enabled: !ENV [CI, false]
  - typeset
  - awesome-pages
  - blog: 
      archive: false
  - git-revision-date-localized:
      enabled: !ENV [CI, false]
      enable_creation_date: true
      exclude:
        - index.md
  - git-authors:
      exclude:
        - index.md
  - rss:
#      enabled: !ENV [CI, false]
      pretty_print: true
      match_path: blog/posts/.* 
      date_from_meta:
        as_creation: date
      categories:
        - categories
        - tags 
  - social:
      cards_layout_options:
        background_color: "#151819"
        color: "#5FFFD7"
  - glightbox
  - macros
  - kroki:
      ServerURL: !ENV [KROKI_SERVER_URL, 'https://kroki.hadan-it.com']
      FileTypes:
        - png
        - svg
      FileTypeOverrides:
        mermaid: png
      FailFast: !ENV CI

# Additional configuration
extra:
  social:
    - icon: fontawesome/brands/mastodon
      link: https://freiburg.social/@stiebke 
    - icon: fontawesome/brands/bluesky
      link: https://bsky.app/profile/stiebke.bsky.social
    - icon: simple/codeberg
      link: https://codeberg.org/stiebke25
    #- icon: fontawesome/brands/threads
    #  link: https://www.threads.net/@stiebke
    #- icon: fontawesome/brands/x-twitter
    #  link: https://x.com/hadan72
    - icon: fontawesome/brands/xing
      link: https://www.xing.com/profile/Stephan_Hadan
    - icon: fontawesome/brands/linkedin
      link: https://de.linkedin.com/in/stiebke2010
    - icon: simple/matrix
      link: https://matrix.to/#/@stiebke25:tchncs.de
    - icon: fontawesome/brands/signal-messenger
      link: https://stephan.hadan.de/contact/#signal
    #- icon: fontawesome/brands/slack
    #  link: https://hadanit.slack.com/team/U04BLKQF2M8
    - icon: simple/pixelfed
      link: https://pixelfed.de/users/stiebke
    - icon: fontawesome/solid/signal
      link: https://status.hadan-it.com/status/myprivatepage
      name: Statusseite dieser Website
    - icon: fontawesome/solid/rss
      link: https://stephan.hadan.de/rss/
      name: RSS-Feeds dieser Website
  isso:
    custom_url: https://comments.hadan-it.com
  status:
    deprecated: Wird entfernt
    new: Kürzlich hinzugefügt
    wip: WIP

extra_css:
  - assets/css/custom.css
  - assets/css/extra-icons.css

# Extensions    
markdown_extensions:
  - abbr
  - admonition
  - attr_list
  - def_list
  - footnotes
  - md_in_html
  - pymdownx.betterem
  - pymdownx.blocks.caption
  - pymdownx.caret
  - pymdownx.emoji:
      emoji_index: !!python/name:material.extensions.emoji.twemoji
      emoji_generator: !!python/name:material.extensions.emoji.to_svg
  - pymdownx.mark
  - pymdownx.tilde  
  - pymdownx.critic
  - pymdownx.details
  - pymdownx.highlight
  - pymdownx.inlinehilite
  - pymdownx.superfences
  - pymdownx.keys
  - pymdownx.smartsymbols
  - pymdownx.snippets
  - pymdownx.tabbed:
      alternate_style: true
  - pymdownx.tasklist:
      custom_checkbox: true
  - tables

# Extra Javascript
extra_javascript:
  - https://unpkg.com/tablesort@5.3.0/dist/tablesort.min.js
  - assets/js/tablesort.js
#  - assets/js/mathjax.js
#  - https://unpkg.com/mathjax@3/es5/tex-mml-chtml.js
  - assets/js/typewriter.js
  - https://unpkg.com/typewriter-effect@latest/dist/core.js

# Page tree
nav:
  - Home: index.md
  - Über mich: about/index.md
  - Lebenslauf: 
    - Daten: cv/overview/index.md
    - Tätigkeiten: cv/activities/index.md
  - Projekte: 
      - Überblick: projects/overview/index.md
      - Kundenprojekte: projects/customerprojects/index.md
      - Interne IT-Projekte: projects/internalprojects/index.md
      - Private Projekte: projects/privateprojects/index.md
      - Projektsteckbriefe:
        - Überblick: projects/profiles/overview/index.md
        - IT-Umzüge: projects/profiles/relocations/index.md
        - Die MDM-/MAM-Reise: projects/profiles/mdm-mam-journey/index.md
        - Pionierarbeit: projects/profiles/online-store/index.md
        - Das Programmierprojekt: projects/profiles/programming/index.md
        - Welches Fahrzeug passt zu mir?: projects/profiles/lifestyle-konfigurator/index.md
        - Zero-Trust-Security: projects/profiles/zero-trust-security/index.md
  - Tech-Stack: 
    - Überblick: techstack/index.md
    - Mein FOSS-Stack: techstack/myfoss-stack/index.md
    - Mein Arbeitsplatz: techstack/myworkplace/index.md
    - Was muss auf meine Clients?: techstack/client-software/index.md
    - Testimonials: techstack/testimonials/index.md
    - Hardware-Alternativen: techstack/hardware-alternatives/index.md
  - Kontakt: contact/index.md
  - Datenschutz: dataprivacy/index.md
  - Impressum: imprint/index.md
  - RSS: rss/index.md
  - Blog:
    - blog/index.md