Puede importar y ejecutar el motor de compilación de docmd mediante programación desde aplicaciones Node.js. Esto permite canalizaciones de compilación personalizadas, generación automatizada de documentación e integraciones de monorepositorios.
Instalación
Asegúrese de que @docmd/core esté instalado en su proyecto:
npm install @docmd/core
Funciones principales de exportación de compilación
buildSite(configPath, options)
Ejecuta la compilación estándar de sitios estáticos:
import { buildSite } from "@docmd/core";
async function runBuild() {
await buildSite("./docmd.config.json", {
isDev: false,
offline: false,
zeroConfig: false
});
}
buildLive(options)
Compila la aplicación Editor en vivo basada en el navegador:
import { buildLive } from "@docmd/core";
async function generateEditor() {
await buildLive({
serve: false,
port: 3000
});
}
Funciones de espacio de trabajo
Funciones para gestionar espacios de trabajo multiproyecto mediante programación:
isWorkspace(config): Evalúa si un objeto de configuración se ajusta a los esquemas del espacio de trabajo.detectWorkspace(configPath): Resuelve las configuraciones del espacio de trabajo, devolviendoWorkspaceRootConfignormalizado onull.buildWorkspace(config, options): Compila todos los proyectos definidos en la raíz del espacio de trabajo.devWorkspace(config, options): Inicia el servidor de desarrollo del espacio de trabajo con seguimiento de recompilación objetivo.
import { detectWorkspace, buildWorkspace } from "@docmd/core";
async function buildAllWorkspaces() {
const config = await detectWorkspace("./docmd.config.json");
if (config) {
await buildWorkspace(config, { quiet: false });
}
}
Ejemplo de canalización personalizada
Componga la compilación de docmd con scripts de compilación personalizados:
import { buildSite } from "@docmd/core";
import fs from "fs-extra";
async function deployPipeline() {
// 1. Generar fuentes de contenido dinámico
await fs.writeFile("./docs/dynamic.md", "# Página generada dinámicamente");
// 2. Ejecutar compilación estática
await buildSite("./docmd.config.json");
// 3. Mover el directorio de salida
await fs.move("./site", "./public/docs");
}
La API de compilación programática permite a los trabajadores en segundo plano y a los agentes de IA activar compilaciones después de modificaciones del código fuente para verificar la integridad del sitio de forma automática.