docmd folgt einer steckbaren Architektur. Fast alle Kernfunktionen — von der Suche über SEO bis hin zur Live-Vorschau — sind als Plugins implementiert. Dieses Design stellt sicher, dass die Engine leichtgewichtig bleibt, während Entwickler Funktionen selektiv basierend auf ihren spezifischen Projektanforderungen aktivieren können.
Plugin-Übersicht
| Plugin | Funktion |
|---|---|
| Suche (Search) | Bietet eine leistungsstarke, Offline-first Volltextsuche. |
| SEO | Generiert automatisch Meta-Tags, Sitemaps und steuert den Zugriff von KI-Crawlern. |
| Mermaid | Rendert Flussdiagramme, Sequenzdiagramme und Gantt-Charts. |
| LLMs | Generiert einen maschinenlesbaren Stream der gesamten Dokumentation für KI-Training oder Suche. |
| Live-Vorschau (Live) | Stellt eine im Browser laufende Rendering-Engine für benutzerdefinierte Editoren bereit. |
Lifecycle-Hooks
Plugins können in den Build-Prozess eingreifen, indem sie sich in die folgenden Lifecycle-Hooks einklinken:
| Hook | Beschreibung |
|---|---|
onInit(ctx) |
Wird sofort nach dem Start der Engine und dem Laden der Konfiguration ausgeführt |
onPostBuild(ctx) |
Ausführung von Logik nach der Generierung aller HTML-Dateien |
translations(localeId) |
Gibt übersetzte UI-Strings für ein Locale zurück |
actions |
Serverseitige Handler, die über WebSocket-RPC vom Browser aus aufrufbar sind |
events |
“Fire-and-Forget”-Handler für vom Browser gepushte Events |
Plugin-Sicherheit
Das Plugin-System bietet integrierte Sicherheitsgarantien:
- Validierung: Plugins können einen
plugin-Deskriptor mitname,versionundcapabilitiesdeklarieren. Ungültige Deskriptoren werden zum Ladezeitpunkt abgelehnt. - Isolierung: Jeder Hook-Aufruf ist in einen Try/Catch-Block gehüllt. Ein fehlerhaftes Plugin kann weder den Build zum Absturz bringen noch andere Plugins beeinflussen.
- Erzwingung von Fähigkeiten: Plugins, die Fähigkeiten (Capabilities) deklarieren, können sich nur für Hooks registrieren, die sie explizit deklariert haben. Nicht deklarierte Hooks werden mit einer Warnung übersprungen.
Siehe Plugins erstellen für die vollständige API-Referenz.
Die Plugin-Architektur ist auf Determinismus ausgelegt. Jeder von einem Plugin injizierte Meta-Tag und jedes Skript ist rückverfolgbar, was es KI-Agenten (und menschlichen Entwicklern) ermöglicht, genau zu verstehen, wie sich die Website verhält, ohne versteckte Nebeneffekte.