Documentación versionada, desde los repositorios que ya tienes
duxt es una capa de Nuxt: extiéndela y tu carpeta docs/ se convierte en un sitio, con tema, búsqueda, referencia de API y llms.txt. Apúntala a otros repositorios, o a etiquetas del mismo, y cada uno se convierte en una versión.
- línea de configuración
- 1
- idiomas incluidos
- 7
- con licencia, código abierto
- MIT
Demo en vivo
Configuración
Una línea, y la carpeta es un sitio
duxt es una capa de Nuxt: extenderla aporta el tema, las páginas, los componentes y los pasos de compilación a la vez, y deja todo reemplazable.
- Sin generador y sin nada que expulsar: tu repositorio conserva sus archivos.
- Sobrescribe un componente colocando el tuyo en la misma ruta.
- Compila a un sitio estático: despliégalo donde vaya Nuxt.
export default defineNuxtConfig({
extends: ['@kirchdev/duxt']
})
export default defineAppConfig({
duxt: {
title: 'Acme',
// The folder you already write in.
sources: [{ path: 'docs' }]
}
})
Fuentes
Varios repositorios, varias versiones, una lista
Una fuente es un repositorio y las versiones, tags o ramas que publicar. duxt convierte la lista en una colección por versión y repositorio y en los prefijos que las separan, todo durante la build.
- Clonado, autenticación de repos privados y caché son del propio Content v3.
- Una fuente única no necesita prefijo: un segmento con un solo valor no distingue nada.
- El selector permanece en la página que lees, y avisa cuando allí no existe.
sources: [
// The repository you are standing in.
{ path: 'docs' },
// Another one: retain the newest patch in every minor line.
{
repo: 'acme/api',
path: 'docs',
releases: { select: 'minor' },
refs: [{ branch: 'main', status: 'upcoming' }]
}
]
# What the build publishes from the list beside this.
/guides/deploying # this repository, no prefix
/api/guides/retries # acme/api at the newest selected release
/api/main/guides/retries # the branch, marked "upcoming"
/api/v1.4.0/guides/retries # another retained minor line
Referencia generada
Referencia desde los artefactos que ya publicas
OpenAPI se convierte en páginas de operaciones y schemas, Bruno en peticiones y descargas, y tfplugindocs en referencias de provider. Todo sigue siendo una colección Content corriente.
- OpenAPI aporta operaciones, schemas, ejemplos y modelos de seguridad.
- Bruno conserva carpetas, documentación y variables y ofrece una descarga depurada.
- tfplugindocs conserva categorías y encabezados del provider sin aplanar el árbol Markdown.
openapi: 3.1.0
info:
title: Acme API
version: 2.4.0
paths:
/widgets:
get:
operationId: listWidgets
meta {
name: List widgets
type: http
seq: 1
}
get {
url: {{baseUrl}}/widgets
body: none
auth: inherit
}
---
page_title: acme_widget Resource
subcategory: Widgets
---
# acme_widget (Resource)
Creates and manages an Acme widget.
Pruébalo
Un cliente que envía la petición real
Cada página de operación lleva un cliente. Rellena los parámetros, edita el cuerpo contra su esquema, envíalo desde tu navegador y lee la respuesta junto al ejemplo que la habría producido.
- Siete ejemplos de fábrica, doce incluidos, o uno propio: reescritos mientras escribes.
- El editor del cuerpo es CodeMirror, cargado bajo demanda: una página sin endpoint no descarga nada de él.
- Tu token se queda en tu navegador: aquí no hay servidor al que enviarlo.
Enviar una solicitud
En tu stack
La misma petición, en tu propio lenguaje
No un ejemplo de una petición como la de arriba: esa petición. El servidor que elegiste, el token que escribiste y el cuerpo que editaste, reescritos en cada pulsación al cliente donde vayas a pegarlo.
- Un solo componente: el ejemplo y el botón no pueden discrepar.
- Añade los tuyos con `requestSamples`, o quita los que tus lectores no usan.
Ejemplo de petición
curl '/demo/echo' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer demo-token' \
-d '{
"reference": "HB-1042",
"mode": "sea"
}'Lectores automáticos
Escrita también para el modelo que la lee
El mismo contenido en formatos legibles por máquinas: índice en llms.txt, versiones predeterminadas en llms-full.txt, cada página en Markdown y una ruta MCP para listar, buscar y leer.
- Las rutas de texto pueden prerenderizarse; MCP sirve las mismas colecciones en ejecución.
- Cada página tiene un «copiar como Markdown» y un enlace que la abre en un asistente.
- La ruta MCP sirve las mismas colecciones que consulta el sitio: una fuente, dos lectores.
Funcionalidades
Extender, no generar
Una línea de configuración aporta tema, páginas y componentes: cualquier archivo se puede sobrescribir.
Fuentes como una lista
Una declaración por fuente en lugar de una colección por versión y repositorio.
Versiones conmutables
Descubre cada versión o conserva una por línea minor o major; el selector mantiene tu página.
Localizado de fábrica
Fallbacks de locale, hreflang e interfaz sensible a la dirección; añade RTL sin bifurcar el tema.
Comprobado antes del despliegue
Enlaces muertos, anclas ausentes y páginas sin traducir detienen la build o quedan visibles.
shadcn-vue
Los componentes se copian, no se importan. Rediseñar uno es editar un archivo.
Navegación desde el contenido
Barra lateral, migas, índice y enlaces anterior o siguiente comparten un árbol de páginas.
Legible por máquinas
llms.txt, Markdown por página y cuatro herramientas MCP sobre el mismo contenido.