Files
info 4733ea6b82 chore: OpenWiki-Dokumentation einrichten, AGENTS.md ergänzen
Fügt OpenWiki-Setup (Workflow, Seiten, CLAUDE.md-Verweis) und AGENTS.md
hinzu, damit wiederkehrende Code-Dokumentation automatisch gepflegt wird.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-23 14:22:57 +02:00

4.0 KiB
Raw Permalink Blame History

type, title, description, tags
type title description tags
Quickstart DocuMentor Schnellstart Einstiegspunkt in die Dokumentation. Überblick über DocuMentor, einer PySide6-Desktop-App für XSL-Transformationsverwaltung und PDF-Generierung.
xsl
pdf
pyside6
desktop-app
transformation

DocuMentor Schnellstart

DocuMentor ist eine PySide6-basierte Desktop-Anwendung zur Verwaltung und Validierung von XSL-Transformationen mit automatischer PDF-Generierung. Sie richtet sich an Entwickler, die kontinuierlich XSL-Stylesheets pflegen und die Auswirkungen auf generierte PDF-Dokumente nachvollziehen müssen.

Was ist DocuMentor?

Der primäre Einsatz ist die Weiterentwicklung von PDF-Dokumenten in Flexnow (Prüfungsverwaltungs-Software). Die Basis bilden ca. 100 XSL-Dateien, die über <xsl:import/> und <xsl:include/> miteinander verknüpft sind. Änderungen an einer XSL-Datei können sich auf viele andere auswirken. DocuMentor hilft, diese Auswirkungen durch automatisierte Transformation und PDF-Vergleich zu kontrollieren.

Kern-Features

  • Hierarchische Projektverwaltung Baumstruktur für Transformations-Workflows mit verschachtelten Knoten
  • Asynchrone Batch-Verarbeitung Große Mengen von XML-Dateien im Hintergrund mit Fortschrittsanzeige
  • Parallele Worker-Pools Persistente JVM-Prozesse für Saxon (XSLT) und Apache FOP (PDF) eliminieren JVM-Startup-Overhead
  • Duplikatserkennung Hash-basierte (blake2b) Erkennung identischer XML-Dateien
  • PDF-Vergleichsansicht Drei-Panel-Ansicht (Referenz, Diff, Neu) mit Alpha-Blending und Zoom
  • PostgreSQL-Integration Datenbankanbindung mit Polars/ConnectorX
  • XSL-Abhängigkeitsgraph Visualisierung von <xsl:import/>- und <xsl:include/>-Beziehungen via vis.js
  • Plattformübergreifend Linux, Windows, macOS

Installation

Voraussetzungen

  • Python 3.13+
  • uv Paketmanager
  • OpenJDK/JRE (für Saxon und Apache FOP)

Abhängigkeiten

uv sync

Externe Tools

Tool Zweck Download
Saxon-HE XSLT 3.0 Prozessor saxonica.com
Apache FOP PDF-Generierung aus XSL-FO xmlgraphics.apache.org
diff-pdf PDF-Vergleich GitHub
OpenJDK JVM für Saxon/FOP Worker-Pools Eclipse Temurin

Anwendung starten

uv run python src/main.py

Beim ersten Start öffnet sich der Einstellungsdialog, in dem die externen Tools (Java VM, Saxon JAR, Apache FOP, diff-pdf, XSL-Verzeichnis, PostgreSQL) konfiguriert werden.

Typischer Workflow

  1. Entwickler ändert XSL-Dateien
  2. Transformation in DocuMentor starten
  3. PDF-Diff begutachten: Wurden die richtigen PDFs geändert?
  4. Prüfen: Entspricht die Änderung der Erwartung?
  5. Ggf. zurück zu Schritt 1

Konfigurationsorte

Plattform Pfad
Linux ~/.config/DocuMentor/config.json
Windows %APPDATA%\DocuMentor\config.json
macOS ~/Library/Application Support/DocuMentor/config.json

Projektdaten werden pro Projekt in project.yaml gespeichert.

Wiki-Struktur

Backlog

  • Web-Seite (web/): Statische HTML-Landingpage mit Datenschutz/Impressum nicht Teil der Anwendungslogik, bei Bedarf separat dokumentieren.
  • Skills (skills/): Nur write-connector (OpenWiki-Skill), nicht projektspezifisch.