Inhaltsübersicht
- Zielsetzung
- Schritt 1: Erweiterungsmodell und Verantwortungen klären
- Schritt 2: Plugin-Modul und Optionen aufbauen
- Schritt 3: Inhalte laden und vorbereiten
- Schritt 4: Routen und statische Daten erzeugen
- Schritt 5: Globale Daten und Aktionen bereitstellen
- Schritt 6: Client-Module und Bundler-Erweiterungen integrieren
- Schritt 7: Nachbearbeitung und Build-Artefakte steuern
- Schritt 8: Theme-Komponenten und Aliase entwickeln
- Schritt 9: Preset und Mehrfachinstanzen gestalten
- Schritt 10: Tests, Paketierung und Wartung etablieren
- Praxisphasen
- Zielgruppe und Voraussetzungen
Zielsetzung
Das Seminar vermittelt die Entwicklung eigener Docusaurus-Plugins, Themes und Presets entlang der offiziellen Erweiterungsarchitektur. Content-Lifecycle, Routen, globale Daten, Client-Module, Bundler-Anpassungen, Theme-Komponenten, Mehrfachinstanzen, Tests, Paketierung und Upgradefähigkeit werden in einem zusammenhängenden Erweiterungsprojekt umgesetzt.
- Plugin-, Theme- und Preset-Aufgaben architektonisch sauber voneinander trennen
- Build-Time- und Client-Lebenszyklen sicher implementieren
- eigene Routen, Daten und Theme-Komponenten mit typisierten Verträgen bereitstellen
- Erweiterungen testbar, paketierbar und über Versionswechsel wartbar gestalten
Seminarinhalte
Schritt 1: Erweiterungsmodell und Verantwortungen klären
Plugins erweitern Build und Datenfluss, Themes liefern darstellende Komponenten, Presets bündeln Konfigurationen. Der gewünschte Anwendungsfall wird dem kleinsten geeigneten Erweiterungstyp zugeordnet.
- Konfiguration, Plugin, Theme und Swizzle vergleichen
- Build-Time- und Browserverantwortung trennen
- öffentliche Erweiterungsschnittstelle festlegen
Schritt 2: Plugin-Modul und Optionen aufbauen
Ein Plugin erhält einen eindeutigen Namen, typisierte Optionen und nachvollziehbare Standardwerte. Mehrfachinstanzen werden über IDs und instanzbezogene Pfade konfliktfrei unterstützt.
- Plugin-Funktion und Kontext verwenden
- Optionen validieren und normalisieren
- Instanz-ID in Daten und Routen berücksichtigen
Schritt 3: Inhalte laden und vorbereiten
Im Content-Lifecycle werden lokale Dateien, erzeugte Daten oder freigegebene Dienste verarbeitet. Die Ausgabe bleibt serialisierbar, deterministisch und frei von nicht benötigten Geheimnissen.
- Datenquelle und Fehlerverhalten definieren
- Änderungszeitpunkt und Cachebarkeit bewerten
- serialisierbares Content-Modell erzeugen
Schritt 4: Routen und statische Daten erzeugen
Geladene Inhalte werden in statische Datendateien und Routen überführt. Route-Komponenten erhalten klar begrenzte Daten und werden für serverseitige Generierung ausgelegt.
- Route-Pfade und Komponentenzuordnung definieren
- statische Daten mit stabilen Schlüsseln erzeugen
- fehlende und doppelte Routen abfangen
Schritt 5: Globale Daten und Aktionen bereitstellen
Site-weite Daten werden nur dann global veröffentlicht, wenn viele Seiten sie benötigen. Plugin-Aktionen und generierte Dateien werden nachvollziehbar benannt und nicht unkontrolliert in andere Instanzen eingemischt.
- globale und routenspezifische Daten unterscheiden
- generierte Dateien und temporäre Inhalte verwalten
- Datenumfang für Browserpakete begrenzen
Schritt 6: Client-Module und Bundler-Erweiterungen integrieren
Client-Module binden globale Browserlogik ein, während Bundler-Hooks Loader, Aliase oder Definitionen ergänzen. Änderungen werden minimal gehalten und auf Entwicklungs- sowie Produktionsmodus geprüft.
- Client-Module mit sauberem Lebenszyklus registrieren
- Bundler-Konfiguration gezielt erweitern
- server- und clientseitige Ausführung unterscheiden
Schritt 7: Nachbearbeitung und Build-Artefakte steuern
Nach dem statischen Build können zusätzliche Dateien geprüft oder erzeugt werden. Nachbearbeitung darf das geprüfte Artefakt nicht unkontrolliert verändern und erhält klare Fehlerregeln.
- Post-Build-Aufgabe mit begrenztem Zweck definieren
- Ausgabe und Fehler transparent protokollieren
- idempotente Wiederholung sicherstellen
Schritt 8: Theme-Komponenten und Aliase entwickeln
Ein Theme stellt React-Komponenten über stabile Aliasnamen bereit. Props, Fallbacks, Styling und Zugänglichkeit werden als öffentliche Verträge behandelt und unabhängig von konkreten Inhaltsplugins getestet.
- Theme-Komponentenstruktur planen
- Komponenten über Aliasnamen exportieren
- Default-Komponenten und Überschreibungen berücksichtigen
Schritt 9: Preset und Mehrfachinstanzen gestalten
Wiederkehrende Kombinationen aus Plugins und Themes werden in einem Preset gebündelt. Konfigurationen bleiben überschreibbar und kollidieren nicht bei mehreren Instanzen.
- Preset-Optionen in Teilkonfigurationen übersetzen
- Standardwerte und Erweiterungspunkte dokumentieren
- Instanzkombinationen in einer Test-Site prüfen
Schritt 10: Tests, Paketierung und Wartung etablieren
Unit-, Integrations- und Build-Tests decken Optionen, Daten, Routen, SSR und mehrere Instanzen ab. Das Paket erhält eindeutige Versionen, Peer-Abhängigkeiten, Änderungsnotizen und eine Upgrade-Strategie.
- Test-Fixture mit minimaler Docusaurus-Site erstellen
- Build- und Typprüfungen automatisieren
- Kompatibilitäts- und Veröffentlichungspolitik festlegen
Praxisphasen
Die einzelnen Arbeitsschritte werden an einer durchgängigen Übungsplattform umgesetzt. Konfigurationen, Inhalte und Prüfungen werden schrittweise erweitert und jeweils mit einem produktionsnahen Build kontrolliert.
- Entwicklung eines Content-Plugins mit Optionen, Datenmodell, statischen Daten und eigenen Routen
- Erstellung eines kleinen Themes mit austauschbaren, zugänglichen Komponenten
- Bündelung als Preset einschließlich Mehrfachinstanz-Test, Paketierung und CI-Prüfung
Zielgruppe und Voraussetzungen
Zielgruppe: Fortgeschrittene JavaScript- oder TypeScript-Entwickler, Docusaurus-Plattformteams und Softwarearchitekten
Voraussetzungen: Sichere Docusaurus-Kenntnisse, gute Kenntnisse in JavaScript oder TypeScript und React sowie Erfahrung mit npm-Paketen und automatisierten Tests
Fachbereichsleitung und Trainerteam
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de
Seminardetails
| Dauer: | 3 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage: 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.797 zzgl. MwSt. Inhaus: € 5.100 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Fortgeschrittene JavaScript- oder TypeScript-Entwickler, Docusaurus-Plattformteams und Softwarearchitekten |
| Voraussetzungen: | Sichere Docusaurus-Kenntnisse, gute Kenntnisse in JavaScript oder TypeScript und React sowie Erfahrung mit npm-Paketen und automatisierten Tests |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Fachvortrag, Demonstrationen, angeleitete Schritt-für-Schritt-Übungen, Gruppenarbeit und praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
