Product Logo

Markdown Webbook CLI

@document-writing-tools/markdown-webbook

Die markdown-webbook CLI ist ein leistungsstarkes Werkzeug, das es dir ermöglicht, Markdown-Dateien in statische HTML-Seiten zu konvertieren.

Installation

echo "@document-writing-tools:registry=https://gitlab.opencode.de/api/v4/projects/2542/packages/npm/" >> ~/.npmrc
npm install -g @document-writing-tools/markdown-webbook

Grundlegende Verwendung

markdown-webbook --input <input-directory> --output <output-directory>

Erforderliche Optionen

  • --input <dir> oder -i <dir>: Pfad zum Verzeichnis mit den Markdown-Dateien.

Hinweis: Im Build-Modus ist zusätzlich --output erforderlich. Im Watch-Modus kann --output entfallen.

markdown-webbook --input ./docs --output ./dist

Optionale Optionen

Build & Run

  • --output <dir> oder -o <dir>
    Ausgabeverzeichnis für statische HTML-Dateien. Im Build-Modus erforderlich, im Watch-Modus optional.
    Hinweis: Im Watch-Modus wird bei fehlendem --output intern ./dist als Default gesetzt.

  • --watch oder -w
    Entwicklungsserver mit Dateiüberwachung starten. Wenn diese Option aktiviert ist, führt die CLI folgende Schritte aus:

    • Einrichten einer temporären Entwicklungsumgebung
    • Starten eines Next.js-Entwicklungsservers
    • Überwachen von Dateiänderungen im Input-Ordner und automatisches Aktualisieren der Vorschau
    • Das Standardausgabeverzeichnis ist ./dist, sofern nicht anders angegeben.
  • --build-directory <dir> oder -b <dir>
    Verzeichnis für temporäre/intermediäre Build-Dateien. Wenn nicht gesetzt, verwendet die CLI ein automatisch erzeugtes Temp-Verzeichnis.

Theme & Branding

  • --theme <name>
    Das anzuwendende Thema. Mögliche Werte: bund | kernux | opencode.
    Default: kernux

  • --title <string>
    Titel des Webbooks in der Navigationsleiste.
    Default: leerer String ("")

  • --dachmarke
    Aktiviert die Dachmarke in Header und Footer. Siehe Digitale Dachmarke documentation.
    Default: false

  • --logo-path <path>
    Pfad zur Logo-Bilddatei (svg, png, jpg), die in der Kopfzeile angezeigt werden soll.

  • --header-lower-badge-logo-path <path>
    Pfad zum Logo im unteren Header-Bereich.

  • --footer-logo-path <path>
    Pfad zur Bilddatei des Fußzeilenlogos (svg, png, jpg).

  • --copyright <string>
    Copyright-Hinweis zur Anzeige in der Fußzeile. Default: leerer String ("")

  • --repository-url <url>
    URL zum Quellcode-Repository. Wenn gesetzt, wird ein openCode-Icon in der Navbar angezeigt.

Feedback-Funktion

  • --feedback-gitlab-project-id <id>
    GitLab-Projekt-ID für die Feedback-Funktion.

  • --feedback-server-url <url>
    Feedback-Server-URL. Siehe Feedback-Server-Dokumentation.

  • --feedback-issue-link <url>
    Link zur GitLab-Issue-Seite (z. B. .../-/issues).

  • --feedback-title <string>
    Titel des Feedback-Formulars.
    Default: Geben Sie uns Feedback

  • --feedback-description <string>
    Beschreibungstext im Feedback-Formular (Inhalt des Beschreibung-Absatzes). Default: Ihr Feedback hilft uns, die Website an den Bedürfnissen der Nutzenden auszurichten. Beschreiben Sie Ihr Anliegen so detailliert wie möglich. Geben Sie keine persönlichen Daten ein.

Inhaltserweiterungen

  • --selfassessment
    Aktiviere das Self-Assessment. Diese Funktion verarbeitet spezielle Kommentarblöcke in Markdown-Dateien, die Bewertungsfragen enthalten. Default: false

  • --hide-glossary-page-in-menu
    Blendet die automatisch erzeugte Glossar-Seite im Menü aus. Default: false

Public-Dateien

  • --copy-to-public-dir <path>
    Kopiert Dateien aus dem angegebenen Verzeichnis zusätzlich in das generierte public-Verzeichnis (z. B. Favicons, security.txt).

Mehrsprachigkeit

  • --multi-language-locales <locales>
    Kommagetrennte Liste von Locales (en,de).

  • --multi-language-default-locale <locale>
    Default-Locale für Mehrsprachigkeit.
    Default: de

Beispiele

Grundlegender Build

Markdown-Dateien in statisches HTML umwandeln:

markdown-webbook --input ./content --output ./out

Development Mode

Entwicklungsserver mit Dateiüberwachung starten:

markdown-webbook --input ./content --watch

Full Configuration

Mit allen Funktionen erstellen:

markdown-webbook \
  --input ./docs \
  --output ./dist \
  --build-directory ./.tmp-markdown-webbook \
  --selfassessment \
  --hide-glossary-page-in-menu \
  --theme kernux \
  --title "Government Documentation" \
  --dachmarke \
  --logo-path /assets/logo.svg \
  --header-lower-badge-logo-path /assets/header-badge.svg \
  --footer-logo-path /assets/footer-logo.png \
  --copyright "© 2025 Government Agency" \
  --repository-url "https://gitlab.opencode.de/myproject" \
  --feedback-gitlab-project-id "12345" \
  --feedback-server-url "https://feedback.gov.de" \
  --feedback-issue-link "https://gitlab.opencode.de/myproject/-/issues" \
  --feedback-title "Geben Sie uns Feedback" \
  --feedback-description "Ihr Feedback hilft uns ..." \
  --copy-to-public-dir ./public-extra \
  --multi-language-locales "de,en" \
  --multi-language-default-locale "de"

Eingabeverzeichnisstruktur

TODO

Self-Assessment Format

Wenn Sie --selfassessment verwenden, fügen Sie Bewertungsfragen in Ihren Markdown-Dateien in diesem Format ein:

# Your Content
 
Regular markdown content here.
 
<!---Self Assessment: This section is reserved for questions for the self assessment. The content of this block will not be displayed in the PDF.
 
###### Main question title? [Tag] ######
 1. Sub-question 1? [SubTag]
     1. Detailed question 1? []
     2. Detailed question 2? [DetailTag]
 2. Sub-question 2? [AnotherTag]
     1. Another detailed question? []
 
--->

Umgebungsvariablen

Die CLI berücksichtigt die folgenden Umgebungsvariablen:

  • STATIC_EXPORT=true - Wird während des Build-Prozesses automatisch gesetzt.

Versionsinformationen

Überprüfen Sie die CLI-Version:

markdown-webbook --version

Hilfe erhalten:

markdown-webbook --help