## Inicio rápido
Ejecuta docmd en cualquier carpeta con archivos Markdown — sin instalación:
```bash
npx @docmd/core dev
```
Abre en http://localhost:3000
```bash
_ _
_| |___ ___ _____ _| |
| . | . | _| | . |
|___|___|___|_|_|_|___|
v1.x.x
┌─ Build
│ Engine JS
│ Source docs/
│ Output site/
│ Versions 2 (06, 05)
│ Locales 7 (en, hi, zh, es, de, ja, fr)
└──────────────────────────────────────────────────────────
┌─ Data Indexing
│ [ DONE ] Syncing git metadata
│ [ DONE ] Building semantic search index (multi-version)
└──────────────────────────────────────────────────────────
┌─ Publishing
│ [ DONE ] Generated robots.txt
│ [ DONE ] Generated .nojekyll (disables Jekyll on GitHub Pages)
│ [ DONE ] Generated sitemap
│ [ DONE ] Generating LLMs context files
└──────────────────────────────────────────────────────────
⬢ Initial build completed in 1.2s.
┌─ Watching
│ Source ./docs
│ Config ./docmd.config.json
│ Assets ./assets
└──────────────────────────────────────────────────────────
┌─ Development Server Running
│ Local Access http://127.0.0.1:3000
│ Network Access http://192.168.1.6:3000
│ Serving from ./site
└──────────────────────────────────────────────────────────
```
La navegación se genera a partir de la estructura de archivos. Sin archivo de configuración, sin frontmatter obligatorio, sin framework que aprender.
**Cuando estés listo para publicar:**
```bash
npx @docmd/core build
```
Esto produce un sitio estático altamente optimizado (SPA) listo para desplegar en Vercel, Cloudflare Pages, Netlify, GitHub Pages o cualquier host estático.
**Requisitos:** Node.js 18+
O instala globalmente / vía Docker
```bash
# Instalar globalmente vía npm
npm install -g @docmd/core
# O vía pnpm
pnpm add -g @docmd/core
# Ejecutarlo
docmd dev # iniciar el servidor de desarrollo
docmd build # construir para desplegar
```
O ejecuta vía Docker:
```bash
docker run -p 3000:3000 ghcr.io/docmd-io/docmd:0.8.7
```
> Fije una versión para compilaciones reproducibles.
## ¿Por qué docmd?
| Característica | docmd | Docusaurus | MkDocs | VitePress | Mintlify |
| :--- | :---: | :---: | :---: | :---: | :---: |
| **Configuración requerida** | **Ninguna** | `docusaurus.config.js` | `mkdocs.yml` | `config.mts` | `docs.json` |
| **Payload JS** | **~18 kb** | ~250 kb | ~40 kb | ~50 kb | ~120 kb |
| **Navegación** | **SPA instantánea** | React SPA | Recarga completa | Vue SPA | SPA alojada |
| **Versionado** | **Nativo** | Nativo (complejo) | Plugin mike | Manual | Nativo |
| **i18n** | **Nativo** | Nativo (complejo) | Basado en plugin | Nativo | Nativo |
| **Multi-proyecto** | **Nativo** | Plugin | Plugin | - | - |
| **Búsqueda** | **Integrada** | Algolia (nube) | Integrada | MiniSearch | Nube |
| **Contexto IA (`llms.txt`)** | **Integrado** | - | - | - | Integrado |
| **Servidor MCP** | **Integrado** | - | - | - | Integrado |
| **Agent Skills** | **Integrado** | - | - | - | - |
| **Imagen Docker** | **Oficial** | - | Oficial | - | - |
| **Autoalojado** | **Sí** | Sí | Sí | Sí | - |
| **Coste** | **Gratis (OSS)** | Gratis (OSS) | Gratis (OSS) | Gratis (OSS) | Freemium |
## Funcionalidades
### Zero config, inicio instantáneo
Apunta docmd a cualquier carpeta de Markdown y se ejecuta. La navegación se genera automáticamente a partir de la estructura de archivos. Puedes escribir tu primer doc y tenerlo en vivo en menos de un minuto — sin boilerplate, sin pipeline de build que configurar, sin decisiones que tomar por adelantado.
### Diminuto por defecto, rápido en todas partes
El payload de JavaScript por defecto es ~18 kb. Las páginas navegan como una SPA instantánea. La salida es HTML estático — optimizado para SEO, con sitemap, URLs canónicas y metadatos Open Graph incluidos. Búsqueda offline de texto completo integrada, sin servicio en la nube necesario.
### AI-nativo
docmd está construido para la forma en que la documentación se lee y se usa hoy:
- **Servidor MCP** — `docmd mcp` expone tu documentación a agentes de IA sobre stdio, permitiéndoles buscar, leer y validar contenido directamente.
- **Contexto (`llms.txt` / `llms-full.txt`)** — contexto completo de documentación generado en tiempo de build, listo para cualquier LLM.
- **Agent Skills** — conjuntos de instrucciones modulares para LLMs y agentes de IDE ([docmd-skills](https://github.com/docmd-io/docmd-skills)).
- **Copiar como Markdown / Copiar contexto** — botones de un clic en el navegador, optimizados para pegar en chats de IA.
### Construido para escalar
- Internacionalización con builds multi-idioma
- Versionado para múltiples releases de documentación
- Workspaces para monorepos y setups multi-proyecto
- Sistema de plugins para extender el comportamiento del núcleo
- Soporte completo de temas, plantillas integradas, CSS/JS personalizado, modo claro/oscuro
## CLI
```bash
docmd dev # servidor de desarrollo local
docmd build # construir para desplegar
docmd live # Editor en vivo basado en navegador
docmd migrate # importar desde Docusaurus, VitePress, MkDocs o Starlight
docmd deploy # generar configuración para Docker, NGINX, Caddy, Vercel, Netlify
docmd validate # comprobar todos los enlaces internos
docmd mcp # ejecutar como servidor MCP sobre stdio
docmd add # instalar un plugin o plantilla
```
## Plugins
La funcionalidad principal está impulsada por un sistema de plugins robusto. Lo esencial viene incluido por defecto, mientras que los plugins opcionales pueden añadirse según necesidades específicas.
| Plugin | Estado | Descripción |
| :--- | :---: | :--- |
| `search` | ✅ Núcleo | Búsqueda offline de texto completo con coincidencia difusa |
| `seo` | ✅ Núcleo | Etiquetas SEO y metadatos Open Graph |
| `sitemap` | ✅ Núcleo | Genera `sitemap.xml` |
| `git` | ✅ Núcleo | Historial de commits de Git y fechas de última actualización |
| `analytics` | ✅ Núcleo | Integración ligera de analytics |
| `llms` | ✅ Núcleo | Generación de contexto IA (`llms.txt` / `llms-full.txt`) |
| `mermaid` | ✅ Núcleo | Soporte de diagramas Mermaid |
| `openapi` | ✅ Núcleo | Renderizador de especificación OpenAPI 3.x en tiempo de build |
| `pwa` | ➕ Opcional | Progressive Web App — navegación offline |
| `threads` | ➕ Opcional | Hilos de discusión inline *(por @svallory)* |
| `math` | ➕ Opcional | Renderizado matemático KaTeX / LaTeX |
Instalar plugins opcionales:
```bash
docmd add
```
Crea el tuyo: [Guía de desarrollo de plugins](https://docs.docmd.io/development/building-plugins/)
## Configuración
No se requiere configuración para comenzar. Añade un `docmd.config.json` (o `.ts` / `.js`) en la raíz de tu proyecto solo cuando necesites más control:
```json
{
"title": "Mi Proyecto",
"url": "https://docs.miproyecto.com",
"src": "./docs",
"out": "./dist"
}
```
Se admiten archivos de configuración TypeScript y JavaScript para valores dinámicos.
Referencia completa: [Resumen de configuración](https://docs.docmd.io/configuration/overview)
## Estructura del proyecto
```text
my-docs/
├── docs/ ← Tus archivos markdown
├── assets/ ← Imágenes y archivos estáticos
├── docmd.config.json ← Configuración opcional
└── package.json
```
## Editor en vivo
Un editor basado en navegador para escribir y previsualizar documentación — sin configuración local.
**Pruébalo en [live.docmd.io](https://live.docmd.io)**
## API programática
Usa docmd en scripts de Node.js, pipelines de CI o pasos de build personalizados. (Soporta tanto CommonJS como ESM.)
```javascript
import { build } from '@docmd/core';
await build('./docmd.config.json', { isDev: false });
```
Referencia completa: [Node API](https://docs.docmd.io/development/node-api-reference/)
## Comunidad
- **Bugs y problemas** → [GitHub Issues](https://github.com/docmd-io/docmd/issues)
- **Preguntas e ideas** → [Discussions](https://github.com/orgs/docmd-io/discussions)
- **Contribuir** → [CONTRIBUTING.md](.github/CONTRIBUTING.md)
- **Roadmap** → [GitHub Discussions](https://github.com/orgs/docmd-io/discussions/2)
## Soporte
- Dar a conocer docmd es la forma más directa de apoyar su desarrollo. [Compártelo en X](https://twitter.com/intent/tweet?url=https://github.com/docmd-io/docmd&text=docmd%20-%20Documentación%20lista%20para%20producción%20desde%20Markdown%20en%20segundos.) con amigos o dale una estrella.
- Si docmd te ahorra tiempo, un [sponsorship en GitHub](https://github.com/sponsors/mgks) ayuda mucho.
- ¿Ideas o bugs? Abre un issue o PR, siéntete libre de contribuir con tus propios plugins.
## Licencia
MIT — consulta [`LICENSE`](./LICENSE) para más detalles.