Documentação com versões, a partir dos repositórios que já tens
O duxt é uma camada Nuxt: estende-a e a tua pasta docs/ torna-se um site, com tema, pesquisa, referência de API e llms.txt. Aponta-a para outros repositórios, ou para tags do mesmo, e cada um torna-se uma versão.
- linha de configuração
- 1
- idiomas incluídos
- 7
- licenciado, código aberto
- MIT
Demonstração ao vivo
Configuração
Uma linha, e a pasta é um site
O duxt é uma camada Nuxt: estendê-la traz o tema, as páginas, os componentes e os passos da build de uma vez, e deixa tudo substituível.
- Sem gerador e sem nada para ejetar: o teu repositório mantém os seus ficheiros.
- Substitui um componente colocando o teu no mesmo caminho.
- Compila para um site estático: publica onde o Nuxt for.
export default defineNuxtConfig({
extends: ['@kirchdev/duxt']
})
export default defineAppConfig({
duxt: {
title: 'Acme',
// The folder you already write in.
sources: [{ path: 'docs' }]
}
})
Fontes
Vários repositórios, várias versões, uma lista
Uma fonte é um repositório e as versões, tags ou branches a publicar. O duxt transforma a lista numa coleção por versão e repositório e nos prefixos que as separam, tudo na build.
- Clonagem, autenticação de repositórios privados e cache vêm do próprio Content v3.
- Uma fonte única não precisa de prefixo: um segmento com um só valor não distingue nada.
- O seletor permanece na página que está a ler, e avisa quando ela não existe lá.
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
Referência gerada
Referência a partir dos artefactos que já publicas
OpenAPI torna-se páginas de operações e schemas, Bruno pedidos e downloads, e tfplugindocs uma referência de provider. Tudo continua a ser uma coleção Content comum.
- O OpenAPI fornece operações, schemas, exemplos e modelos de segurança.
- O Bruno preserva pastas, documentação e variáveis e oferece um download expurgado.
- O tfplugindocs conserva categorias e títulos do provider sem achatar a árvore 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.
Experimentar
Um cliente que envia o pedido real
Cada página de operação traz um cliente. Preenche os parâmetros, edita o corpo contra o seu esquema, envia a partir do teu browser, e lê a resposta ao lado do exemplo que a teria produzido.
- Sete exemplos de origem, doze incluídos, ou um teu, reescritos enquanto escreves.
- O editor do corpo é CodeMirror, carregado a pedido: uma página sem endpoint não descarrega nada dele.
- O teu token fica no teu browser: aqui não há servidor a quem enviá-lo.
Enviar um pedido
Na tua stack
O mesmo pedido, na tua linguagem
Não um exemplo de um pedido como o de cima, mas esse pedido. O servidor que escolheste, o token que escreveste e o corpo que editaste, reescritos a cada tecla para o cliente onde o vais colar.
- Um só componente: o exemplo e o botão não podem divergir.
- Acrescenta os teus com `requestSamples`, ou tira os que os teus leitores não usam.
Exemplo de pedido
curl '/demo/echo' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer demo-token' \
-d '{
"reference": "HB-1042",
"mode": "sea"
}'Leitores automáticos
Escrita também para o modelo que a lê
O mesmo conteúdo em formatos legíveis por máquinas: índice em llms.txt, versões predefinidas em llms-full.txt, cada página em Markdown e rota MCP para listar, pesquisar e ler.
- As rotas de texto podem ser pré-renderizadas; o MCP serve as mesmas coleções em execução.
- Cada página tem um «copiar como Markdown» e uma ligação que a abre num assistente.
- A rota MCP serve as mesmas coleções que o site consulta: uma fonte, dois leitores.
Funcionalidades
Estender, não gerar
Uma linha de configuração traz tema, páginas e componentes, e qualquer arquivo pode ser substituído.
Fontes como uma lista
Uma declaração por fonte em vez de uma coleção por versão e repositório.
Versões comutáveis
Descobre cada versão ou mantém uma por linha minor ou major; o seletor conserva a tua página.
Localizado de origem
Fallbacks de locale, hreflang e interface sensível à direção; acrescenta RTL sem fork do tema.
Verificado antes do deploy
Links mortos, âncoras ausentes e páginas sem tradução param a build ou ficam visíveis nela.
shadcn-vue
Os componentes são copiados, não importados. Redesenhar um é editar um arquivo.
Navegação a partir do conteúdo
Barra lateral, breadcrumbs, índice e ligações anterior ou seguinte partilham uma árvore.
Legível por máquinas
llms.txt, Markdown por página e quatro ferramentas MCP sobre o mesmo conteúdo.