* Add Lenna Alesi team profile page with comprehensive visual analysis capabilities * Update team index to make Lenna Alesi clickable and add expanded description * Update mkdocs.yml add Lenna to Team Signed-off-by: Jane Alesi <ja@satware.ai> * Add John Alesi team profile page with comprehensive software development AGI capabilities * Update team index to make John Alesi clickable and add expanded description * Update mkdocs.yml to include John Alesi in navigation * Add Lenna Alesi Team Profile - Advanced Visual Analysis Expert (#88) * Add Lenna Alesi team profile page with comprehensive visual analysis capabilities * Update team index to make Lenna Alesi clickable and add expanded description * Update mkdocs.yml add Lenna to Team Signed-off-by: Jane Alesi <ja@satware.ai> --------- Signed-off-by: Jane Alesi <ja@satware.ai> * Update mkdocs.yml (#90) Signed-off-by: Michael Wegener <mw@satware.com> * Exchange of Silent Waves Logo * Update mkdocs.yml to include John Alesi in navigation * Add custom 404 page and preload optimizations for enhanced user experience. - Include detailed, responsive HTML structure for `/404.html`. - Optimize with critical CSS, meta tags, and deferred resource loading. - Implement lazy loading, hover effects, and mobile navigation support. - Add Font Awesome Pro stylesheet for consistent icon integration. * feat: Implement internal documentation protection system - Create docs/internal/ directory for internal documentation - Configure mkdocs-exclude plugin to prevent publication - Add .clinerules/satware-ai-dev.md for AI assistant enforcement - Document internal documentation policy in README.md - Move dev-ci-parity-analysis.md to protected location CRITICAL FIX: Corrected glob pattern from 'internal/**/*' to 'internal/*' (mkdocs-exclude plugin requires patterns relative to docs/ dir without subdirectory wildcard for top-level exclusion) TESTING VERIFIED: ✅ mkdocs build --clean completes without internal doc warnings ✅ site/internal/ directory does NOT exist in built output ✅ No traces of internal documents in site/ directory ✅ Build time improved (17.51s → 7.07s after exclusion) Prevents accidental publication of internal development documentation to public satware.ai website via multi-layer protection: 1. Build-time exclusion (mkdocs-exclude plugin) 2. Developer documentation (README.md policy section) 3. AI assistant enforcement (.clinerules/ MANDATORY rules) 4. Pre-commit verification procedures * docs: Update .clinerules with verified glob pattern and testing procedures CRITICAL UPDATE: Document correct mkdocs-exclude glob pattern Key Changes: - Add CRITICAL section documenting 'internal/*' vs 'internal/**/*' pattern - Include verified testing procedures with expected outputs - Add performance benchmarks (17.51s → 7.07s, 59% improvement) - Consolidate redundant examples and verbose sections - Streamline Rule #2 (AI behavior) and Rule #6 (documentation standards) - Update version to 1.1 Testing Verified (2025-11-09): ✅ Pattern 'internal/*' excludes docs/internal/ from build ✅ Pattern 'internal/**/*' DOES NOT work (critical finding) ✅ All verification commands tested and documented This update ensures future developers and AI assistants use the correct glob pattern to prevent accidental publication of internal documentation to the public satware.ai website. * docs: Move and organize tasks.md to internal backlog Move tasks.md to docs/internal/project-improvement-backlog.md Key Changes: - Renamed: tasks.md → docs/internal/project-improvement-backlog.md - Added frontmatter (INTERNAL document metadata) - Marked completed tasks from recent work: ✅ Internal documentation protection system ✅ CI/CD environment analysis - Organized 43 pending tasks across 8 categories - Added priority summary (Immediate/Short-term/Long-term) - Updated status notes for tasks with existing work - Added context notes about original file location Purpose: This backlog contains internal planning and development tasks not intended for public consumption, so it belongs in the protected docs/internal/ directory per .clinerules policy. Categories: 1. Code Organization (5 tasks) 2. Documentation Quality (5 tasks) 3. Build Process (5 tasks) 4. Performance Optimizations (5 tasks) 5. Accessibility Improvements (5 tasks) 6. SEO Enhancements (5 tasks) 7. Content Structure (5 tasks) 8. Internationalization (5 tasks) 9. Testing & QA (5 tasks) Total: 45 tasks (2 completed, 43 pending) * chore: Add Gemfile.lock to .gitignore (orphaned file) Gemfile.lock is an orphaned Ruby/Bundler file that should not be tracked in this Python/MkDocs project. Analysis: - This is a MkDocs (Python) documentation project - No Gemfile exists in the repository - Gemfile.lock dated April 10, 2025 (likely leftover from test) - Lock file cannot be regenerated without source Gemfile - Ruby/Bundler not used in this project's build pipeline Changes: - Added Gemfile.lock to .gitignore - Added comprehensive Ruby/Bundler ignore patterns: - Gemfile.lock (the orphaned file) - Gemfile (in case it appears) - .bundle/ (Bundler configuration directory) - vendor/bundle/ (Bundler gem installation directory) This prevents future accidental commits of Ruby files in this Python-based documentation project. * docs: Add end-of-day session documentation (2025-11-09) Session summary: - 6 commits completed today - Internal documentation protection system finalized - .clinerules updated with verified patterns - Project organization improvements - All work safely committed and pushed Status: Ready for next session --------- Signed-off-by: Jane Alesi <ja@satware.ai> Signed-off-by: Michael Wegener <mw@satware.com> Co-authored-by: Michael Wegener <mw@satware.com> Co-authored-by: Tim Friedrich Weber <tfw@satware.com>
361 lines
12 KiB
YAML
361 lines
12 KiB
YAML
site_name: 'satware® AI'
|
|
site_url: https://satware.ai/
|
|
site_author: satware AG
|
|
site_description: >-
|
|
Entdecken Sie die KI-gestützten Lösungen von satware®. Innovative
|
|
Automatisierung und maßgeschneiderte IT-Lösungen für Ihr Unternehmen.
|
|
|
|
use_directory_urls: false
|
|
|
|
copyright: Copyright © 2025 satware AG
|
|
|
|
theme:
|
|
name: material
|
|
font: false
|
|
custom_dir: overrides/
|
|
language: de
|
|
|
|
# Dark Mode als Standard (entsprechend satware CI)
|
|
palette:
|
|
scheme: slate
|
|
primary: custom
|
|
accent: custom
|
|
|
|
features:
|
|
- announce.dismiss
|
|
- content.code.annotate
|
|
- content.code.copy
|
|
- content.tabs.link
|
|
- content.tooltips
|
|
- header.autohide
|
|
- navigation.expand
|
|
- navigation.footer
|
|
- navigation.indexes
|
|
- navigation.instant
|
|
- navigation.path
|
|
- navigation.sections
|
|
- navigation.tabs
|
|
- navigation.tabs.sticky
|
|
- navigation.top
|
|
- navigation.tracking
|
|
- search.highlight
|
|
- search.share
|
|
- search.suggest
|
|
- toc.follow
|
|
|
|
#font:
|
|
# text: Roboto
|
|
# code: Roboto Mono
|
|
|
|
favicon: assets/images/favicon.png
|
|
logo: assets/images/logo.svg
|
|
icon:
|
|
logo: logo
|
|
|
|
plugins:
|
|
- meta
|
|
- exclude:
|
|
glob:
|
|
- "internal/*"
|
|
- "templates/*"
|
|
- blog:
|
|
blog_dir: blog
|
|
blog_toc: true
|
|
post_url_format: "{slug}"
|
|
post_date_format: "dd.MM.yyyy"
|
|
archive_toc: true
|
|
pagination: true
|
|
archive: true
|
|
authors: true
|
|
- search
|
|
- redirects:
|
|
redirect_maps:
|
|
# Critical business page redirects - Fix for 404 errors
|
|
'zugang.md': 'zugang/index.md' # /zugang -> /zugang/index.html
|
|
'demo.md': 'https://chat.satware.ai/' # /demo -> external chat URL
|
|
|
|
# satware AG Benutzerkürzel System - Team Member Redirects
|
|
# Format: kuerzel.md -> team/member.md
|
|
# Unterstützt sowohl Groß- als auch Kleinschreibung
|
|
|
|
# A-Team
|
|
'aa.md': 'team/amira.md' # Amira Alesi
|
|
'aa/index.md': 'team/amira.md'
|
|
'AA.md': 'team/amira.md' # Uppercase variant
|
|
'AA/index.md': 'team/amira.md'
|
|
'Aa.md': 'team/amira.md' # Mixed case variant
|
|
'Aa/index.md': 'team/amira.md'
|
|
|
|
# B-Team
|
|
'ba.md': 'team/bastian.md' # Bastian Alesi
|
|
'ba/index.md': 'team/bastian.md'
|
|
'BA.md': 'team/bastian.md' # Uppercase variant
|
|
'BA/index.md': 'team/bastian.md'
|
|
'Ba.md': 'team/bastian.md' # Mixed case variant
|
|
'Ba/index.md': 'team/bastian.md'
|
|
'bea.md': 'team/bea.md' # Bea Alesi (collision resolved)
|
|
'bea/index.md': 'team/bea.md'
|
|
'BEA.md': 'team/bea.md' # Uppercase variant
|
|
'BEA/index.md': 'team/bea.md'
|
|
'Bea.md': 'team/bea.md' # Mixed case variant
|
|
'Bea/index.md': 'team/bea.md'
|
|
'BEA.md': 'team/bea.md' # Mixed case variant
|
|
'BEa/index.md': 'team/bea.md'
|
|
'beA.md': 'team/bea.md' # Mixed case variant
|
|
'beA/index.md': 'team/bea.md'
|
|
|
|
# D-Team
|
|
'da.md': 'team/denopus.md' # Denopus Alesi
|
|
'da/index.md': 'team/denopus.md'
|
|
'DA.md': 'team/denopus.md' # Uppercase variant
|
|
'DA/index.md': 'team/denopus.md'
|
|
'Da.md': 'team/denopus.md' # Mixed case variant
|
|
'Da/index.md': 'team/denopus.md'
|
|
|
|
# G-Team
|
|
'ga.md': 'team/gunta.md' # Gunta Alesi
|
|
'ga/index.md': 'team/gunta.md'
|
|
'GA.md': 'team/gunta.md' # Uppercase variant
|
|
'GA/index.md': 'team/gunta.md'
|
|
'Ga.md': 'team/gunta.md' # Mixed case variant
|
|
'Ga/index.md': 'team/gunta.md'
|
|
|
|
# J-Team
|
|
'ja.md': 'team/jane.md' # Jane Alesi
|
|
'ja/index.md': 'team/jane.md'
|
|
'JA.md': 'team/jane.md' # Uppercase variant
|
|
'JA/index.md': 'team/jane.md'
|
|
'Ja.md': 'team/jane.md' # Mixed case variant
|
|
'Ja/index.md': 'team/jane.md'
|
|
'jane.md': 'team/jane.md' # Alternative redirect
|
|
'JANE.md': 'team/jane.md' # Uppercase alternative
|
|
'Jane.md': 'team/jane.md' # Mixed case alternative
|
|
'joa.md': 'team/john.md' # John Alesi (collision resolved)
|
|
'joa/index.md': 'team/john.md'
|
|
'JOA.md': 'team/john.md' # Uppercase variant
|
|
'JOA/index.md': 'team/john.md'
|
|
'Joa.md': 'team/john.md' # Mixed case variant
|
|
'Joa/index.md': 'team/john.md'
|
|
'JOa.md': 'team/john.md' # Mixed case variant
|
|
'JOa/index.md': 'team/john.md'
|
|
'joA.md': 'team/john.md' # Mixed case variant
|
|
'joA/index.md': 'team/john.md'
|
|
'jua.md': 'team/justus.md' # Justus Alesi (collision resolved)
|
|
'jua/index.md': 'team/justus.md'
|
|
'JUA.md': 'team/justus.md' # Uppercase variant
|
|
'JUA/index.md': 'team/justus.md'
|
|
'Jua.md': 'team/justus.md' # Mixed case variant
|
|
'Jua/index.md': 'team/justus.md'
|
|
'JUa.md': 'team/justus.md' # Mixed case variant
|
|
'JUa/index.md': 'team/justus.md'
|
|
'juA.md': 'team/justus.md' # Mixed case variant
|
|
'juA/index.md': 'team/justus.md'
|
|
|
|
# L-Team
|
|
'la.md': 'team/lara.md' # Lara Alesi
|
|
'la/index.md': 'team/lara.md'
|
|
'LA.md': 'team/lara.md' # Uppercase variant
|
|
'LA/index.md': 'team/lara.md'
|
|
'La.md': 'team/lara.md' # Mixed case variant
|
|
'La/index.md': 'team/lara.md'
|
|
'lea.md': 'team/lenna.md' # Lenna Alesi (collision resolved)
|
|
'lea/index.md': 'team/lenna.md'
|
|
'LEA.md': 'team/lenna.md' # Uppercase variant
|
|
'LEA/index.md': 'team/lenna.md'
|
|
'Lea.md': 'team/lenna.md' # Mixed case variant
|
|
'Lea/index.md': 'team/lenna.md'
|
|
'LEa.md': 'team/lenna.md' # Mixed case variant
|
|
'LEa/index.md': 'team/lenna.md'
|
|
'leA.md': 'team/lenna.md' # Mixed case variant
|
|
'leA/index.md': 'team/lenna.md'
|
|
'leo.md': 'team/leon.md' # Leon Alesi (collision resolved)
|
|
'leo/index.md': 'team/leon.md'
|
|
'LEO.md': 'team/leon.md' # Uppercase variant
|
|
'LEO/index.md': 'team/leon.md'
|
|
'Leo.md': 'team/leon.md' # Mixed case variant
|
|
'Leo/index.md': 'team/leon.md'
|
|
'LEo.md': 'team/leon.md' # Mixed case variant
|
|
'LEo/index.md': 'team/leon.md'
|
|
'leO.md': 'team/leon.md' # Mixed case variant
|
|
'leO/index.md': 'team/leon.md'
|
|
'lua.md': 'team/luna.md' # Luna Alesi (collision resolved)
|
|
'lua/index.md': 'team/luna.md'
|
|
'LUA.md': 'team/luna.md' # Uppercase variant
|
|
'LUA/index.md': 'team/luna.md'
|
|
'Lua.md': 'team/luna.md' # Mixed case variant
|
|
'Lua/index.md': 'team/luna.md'
|
|
'LUa.md': 'team/luna.md' # Mixed case variant
|
|
'LUa/index.md': 'team/luna.md'
|
|
'luA.md': 'team/luna.md' # Mixed case variant
|
|
'luA/index.md': 'team/luna.md'
|
|
|
|
# M-Team
|
|
'ma.md': 'team/marco.md' # Marco Alesi
|
|
'ma/index.md': 'team/marco.md'
|
|
'MA.md': 'team/marco.md' # Uppercase variant
|
|
'MA/index.md': 'team/marco.md'
|
|
'Ma.md': 'team/marco.md' # Mixed case variant
|
|
'Ma/index.md': 'team/marco.md'
|
|
|
|
# O-Team
|
|
'oa.md': 'team/olu.md' # Olu Alesi
|
|
'oa/index.md': 'team/olu.md'
|
|
'OA.md': 'team/olu.md' # Uppercase variant
|
|
'OA/index.md': 'team/olu.md'
|
|
'Oa.md': 'team/olu.md' # Mixed case variant
|
|
'Oa/index.md': 'team/olu.md'
|
|
|
|
# T-Team
|
|
'ta.md': 'team/theo.md' # Theo Alesi
|
|
'ta/index.md': 'team/theo.md'
|
|
'TA.md': 'team/theo.md' # Uppercase variant
|
|
'TA/index.md': 'team/theo.md'
|
|
'Ta.md': 'team/theo.md' # Mixed case variant
|
|
'Ta/index.md': 'team/theo.md'
|
|
|
|
# W-Team
|
|
'wa.md': 'team/wolfgang.md' # Wolfgang Alesi
|
|
'wa/index.md': 'team/wolfgang.md'
|
|
'WA.md': 'team/wolfgang.md' # Uppercase variant
|
|
'WA/index.md': 'team/wolfgang.md'
|
|
'Wa.md': 'team/wolfgang.md' # Mixed case variant
|
|
'Wa/index.md': 'team/wolfgang.md'
|
|
|
|
- minify:
|
|
minify_js: true
|
|
minify_html: true
|
|
minify_css: true
|
|
htmlmin_opts:
|
|
remove_comments: true
|
|
- git-revision-date-localized:
|
|
enable_creation_date: true
|
|
fallback_to_build_date: true
|
|
- social:
|
|
cards_layout_options:
|
|
background_color: "#000000"
|
|
- rss:
|
|
feed_title: satware® AI Blog
|
|
feed_description: Aktuelle Nachrichten, technische Einblicke und Innovationen von satware® AI.
|
|
match_path: blog/posts/.*
|
|
abstract_chars_count: 250
|
|
date_from_meta:
|
|
as_creation: date
|
|
categories:
|
|
- categories
|
|
- tags
|
|
pretty_print: false
|
|
use_git: true
|
|
|
|
# Erweiterungen
|
|
markdown_extensions:
|
|
- abbr
|
|
- admonition
|
|
- attr_list
|
|
- def_list
|
|
- footnotes
|
|
- md_in_html
|
|
- toc:
|
|
permalink: true
|
|
- pymdownx.arithmatex:
|
|
generic: true
|
|
- pymdownx.betterem:
|
|
smart_enable: all
|
|
- pymdownx.caret
|
|
- pymdownx.details
|
|
- pymdownx.emoji:
|
|
emoji_generator: !!python/name:material.extensions.emoji.to_svg
|
|
emoji_index: !!python/name:material.extensions.emoji.twemoji
|
|
- pymdownx.highlight:
|
|
anchor_linenums: true
|
|
line_spans: __span
|
|
pygments_lang_class: true
|
|
- pymdownx.inlinehilite
|
|
- pymdownx.keys
|
|
- pymdownx.magiclink:
|
|
repo_url_shorthand: true
|
|
user: satware
|
|
repo: satwareai-mkdocs
|
|
- pymdownx.mark
|
|
- pymdownx.smartsymbols
|
|
- pymdownx.superfences:
|
|
custom_fences:
|
|
- name: mermaid
|
|
class: mermaid
|
|
format: !!python/name:pymdownx.superfences.fence_code_format
|
|
- pymdownx.tabbed:
|
|
alternate_style: true
|
|
- pymdownx.tasklist:
|
|
custom_checkbox: true
|
|
- pymdownx.tilde
|
|
|
|
# Zusätzliche Konfiguration
|
|
extra:
|
|
social:
|
|
- icon: fontawesome/brands/square-facebook
|
|
link: https://www.facebook.com/satwareAG/
|
|
name: satware AG auf Facebook
|
|
- icon: fontawesome/brands/instagram
|
|
link: https://www.instagram.com/satware.ag/
|
|
name: satware AG auf Instagram
|
|
- icon: fontawesome/brands/linkedin
|
|
link: https://www.linkedin.com/company/satware-ag/?originalSubdomain=de
|
|
name: satware AG auf LinkedIn
|
|
- icon: fontawesome/brands/x-twitter
|
|
link: https://x.com/satwareAG
|
|
name: satware AG auf X
|
|
- icon: fontawesome/brands/xing
|
|
link: https://www.xing.com/pages/satwareag
|
|
name: satware AG auf Xing
|
|
- icon: fontawesome/brands/youtube
|
|
link: https://www.youtube.com/@satwareAG
|
|
name: satware AG auf YouTube
|
|
|
|
#cards:
|
|
# font:
|
|
# text: Assistant
|
|
# code: Assistant
|
|
# cards_layout_options:
|
|
# background_color: "#000"
|
|
|
|
generator: false
|
|
|
|
# CSS-Anpassungen
|
|
extra_css:
|
|
- assets/css/custom.css
|
|
extra_javascript:
|
|
- assets/js/body-classes.js
|
|
- assets/js/consent.js
|
|
- assets/js/counter-animation.js
|
|
- assets/js/faq.js
|
|
- assets/js/testimonials.js
|
|
- assets/js/wcag.js
|
|
- assets/js/lightbox.js
|
|
- assets/js/slideshow.js
|
|
|
|
# Navigation
|
|
nav:
|
|
- KI-Agenten:
|
|
- Übersicht: team/index.md
|
|
- Amira Alesi: team/amira.md
|
|
- Bastian Alesi: team/bastian.md
|
|
- Bea Alesi: team/bea.md
|
|
- Denopus Alesi: team/denopus.md
|
|
- Gunta Alesi: team/gunta.md
|
|
- Jane Alesi: team/jane.md
|
|
- John Alesi: team/john.md
|
|
- Justus Alesi: team/justus.md
|
|
- Lara Alesi: team/lara.md
|
|
- Lenna Alesi: team/lenna.md
|
|
- Leon Alesi: team/leon.md
|
|
- Luna Alesi: team/luna.md
|
|
- Marco Alesi: team/marco.md
|
|
- Olu Alesi: team/olu.md
|
|
- Theo Alesi: team/theo.md
|
|
- Wolfgang Alesi: team/wolfgang.md
|
|
- Anwendungen: anwendungen/index.md
|
|
- Webinare: webinare/index.md
|
|
- Workshops: workshops/index.md
|
|
- Preise: zugang/index.md
|
|
- FAQ: faq/index.md
|
|
- Blog: blog/index.md
|