Von VitePress migrieren zu docmd
VitePress ist ein schnelles, Vue-basiertes SSG-Framework. Genau wie VitePress ist docmd außergewöhnlich schnell, erreicht dies jedoch, indem absolut keine JavaScript-Framework-Logik an den Client ausgeliefert wird (kein Overhead durch Vue-Hydration).
Schritt 1: Führen Sie die Migrations-Engine aus
Führen Sie den folgenden Befehl im Hauptverzeichnis Ihres bestehenden VitePress-Projekts aus:
npx @docmd/core migrate --vitepress
Was passiert automatisch
- Backup: Ihr gesamtes Projekt wird sicher in ein neues
vitepress-backup/-Verzeichnis verschoben. - Inhaltsmigration: Ihr
docs/-Ordner wird im Stammverzeichnis wiederhergestellt, damitdocmdihn verwenden kann. Der versteckte.vitepress-Konfigurationsordner wird vollständig aus dem neuendocs/-Verzeichnis entfernt, um Konflikte zu vermeiden. - Konfigurationsgenerierung: Eine
docmd.config.jswird generiert, die Ihren Website-titleaus Ihrer.vitepress/config.jsoder.tsextrahiert.
Schritt 2: Testen Sie das Setup
Sobald der Befehl abgeschlossen ist, können Sie Ihre Inhalte in docmd in der Vorschau anzeigen:
npx @docmd/core dev
Ihre Markdown-Dateien werden kompiliert, aber Ihre Navigations-Sidebar bleibt zunächst leer.
Schritt 3: Manuelle Konfiguration
VitePress konfiguriert die Navigation in seiner Konfigurationsdatei und verwendet Vue-Komponenten innerhalb von Markdown. Sie müssen diese auf docmd umstellen.
1. Navigations-Setup
VitePress verwendet ein Array von Objekten unter themeConfig.sidebar.
Aktion erforderlich: Erstellen Sie eine navigation.json in Ihrem docs/-Verzeichnis.
VitePress (.vitepress/config.js):
themeConfig: {
sidebar: [
{
text: 'Guide',
items: [
{ text: 'Introduction', link: '/introduction' },
{ text: 'Getting Started', link: '/getting-started' }
]
}
]
}
docmd (navigation.json):
[
{
"title": "Guide",
"collapsible": true,
"children": [
{ "title": "Introduction", "path": "/introduction" },
{ "title": "Getting Started", "path": "/getting-started" }
]
}
]
2. Vue-Komponenten ersetzen
VitePress erlaubt es Autoren, Vue-Komponenten (z. B. <MyComponent />) direkt in Markdown-Dateien einzubetten. Da docmd Vue nicht auf dem Client ausführt, müssen Sie diese benutzerdefinierten Komponenten entfernen oder durch natives Markdown ersetzen.
Aktion erforderlich: Ersetzen Sie Vue-spezifische UI-Komponenten durch docmd Container.
Beispiel: Admonitions (Benutzerdefinierte Container)
VitePress verwendet eine benutzerdefinierte Block-Syntax für markdown-it, die der von docmd sehr ähnlich sieht.
VitePress:
::: info
This is an info box.
:::
docmd:
::: info
This is an info box.
:::
Hinweis: VitePress verwendet info, tip, warning, danger, details. docmd unterstützt diese direkt, aber Sie möchten sich möglicherweise die vollständige Liste der docmd Callouts ansehen.
Nächste Schritte
- Entdecken Sie den
docmd-Leitfaden Bauen & Bereitstellen, dadocmdnicht auf die Build-Pipeline von Vite angewiesen ist.