Docusaurus ist ein React-basiertes Dokumentations-Framework. docmd bietet eine schnelle, Zero-Config-Alternative, die deutlich schneller kompiliert und keine React-Komponenten zum Rendern reichhaltiger Dokumentationsfunktionen benötigt.
1. Ausführen der Migrations-Engine
Führen Sie den folgenden Befehl im Stammverzeichnis Ihres bestehenden Docusaurus-Projekts aus:
npx @docmd/core migrate --docusaurus
pnpm dlx @docmd/core migrate --docusaurus
yarn dlx @docmd/core migrate --docusaurus
bunx @docmd/core migrate --docusaurus
Was automatisch passiert
- Backup: Ihr gesamtes Projektverzeichnis (ausgenommen
node_modules,.git,package.jsonund Lockfiles) wird sicher in ein neuesdocusaurus-backup/-Verzeichnis gesichert. - Inhalts-Migration: Ihr
docs/-Ordner wird im Projekt-Stammverzeichnis wiederhergestellt. - Frontmatter-Übersetzung: Docusaurus
sidebar_label-Frontmatter-Tags werden automatisch indocmd’snav_titleübersetzt, und alteid-Tags werden sicher entfernt. - Konfigurations-Generierung: Eine
docmd.config.jsonwird generiert, die Ihren Website-titleund Optionen für statische Verzeichnisse ausdocusaurus.config.jsoderdocusaurus.config.tsextrahiert.
2. Vorschau der Migrations-Ausgabe
Zeigen Sie Ihre Markdown-Inhalte sofort in docmd an:
npx @docmd/core dev
pnpm dlx @docmd/core dev
yarn dlx @docmd/core dev
bunx @docmd/core dev
3. Manuelle Konfiguration & Komponenten-Ersatz
Docusaurus verwendet programmatische JavaScript-Konfigurationen und React-Komponenten, die nativen Markdown- und docmd-Containern zugeordnet werden müssen.
Navigations-Einrichtung
Docusaurus-Seitenleisten werden oft automatisch generiert oder in sidebars.js deklariert. Erstellen Sie eine navigation.json in Ihrem docs/-Verzeichnis, um explizite Seitenleisten-Navigation zu definieren. Siehe den Navigations-Leitfaden.
Ersetzen von MDX & React-Komponenten
Konvertieren Sie benutzerdefinierte <MyReactComponent />-Tags in Standard-Markdown oder verwenden Sie die nativen Container von docmd.
Admonition-Container-Aliase
Docusaurus-Admonitions funktionieren direkt nach der Installation ohne Dateimodifikationen:
:::note→ rendert alscallout info:::tip→ rendert alscallout tip:::info→ rendert alscallout info:::caution→ rendert alscallout warning:::danger→ rendert alscallout danger
Für erweiterte Funktionen (z. B. benutzerdefinierte Icons oder benutzerdefinierte Badge-Farben) konvertieren Sie Docusaurus-Admonitions in die native docmd-Syntax:
::: callout tip title:"Benutzerdefinierter Titel" icon:sparkles
Dies ist ein Tipp-Container.
::: /callout
Tabs mit Codeblöcken
Docusaurus (React MDX):
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
<Tabs>
<TabItem value="apple" label="Apple" default>
Apple content.
</TabItem>
<TabItem value="orange" label="Orange">
Orange content.
</TabItem>
</Tabs>
docmd (Nativer Container):
::: tabs
== tab "Apple" icon:apple
Apple content.
== tab "Orange" icon:citrus
Orange content.
::: /tabs
Lokalisierung (i18n)
Wenn Sie die i18n-Funktionen von Docusaurus verwendet haben, verschieben Sie übersetzte Dateien aus i18n/<locale>/docusaurus-plugin-content-docs/current/ in die Locale-Verzeichnisse von docmd (docs/en/, docs/de/, docs/zh/ usw.) und definieren Sie Locale-Codes in docmd.config.json. Siehe den Lokalisierungs-Leitfaden.
Nächste Schritte
- Passen Sie das Erscheinungsbild der Website im Layout- & UI-Leitfaden an.
- Ersetzen Sie benutzerdefinierte React-Hero-Landingpages durch native Hero-Container.