Zum Inhalt springen
duxt
v0.1.0 veröffentlicht

Versionierte Dokumentation — aus den Repositories, die du schon hast

duxt ist ein Nuxt-Layer: erweitern, und dein docs/-Ordner wird zur Website — mit Theme, Suche, API-Referenz und llms.txt. Zeig damit auf andere Repositories oder auf Tags desselben, und jedes wird zu einer Version.

Zeile Konfiguration
1
Sprachen mitgeliefert
7
lizenziert, quelloffen
MIT

Live-Demo

http://localhost/de-DE/getting-started
Öffnen

Einrichtung

Eine Zeile, und der Ordner ist eine Website

duxt ist ein Nuxt-Layer: Erweitern bringt Theme, Seiten, Komponenten und Build-Schritte auf einmal — und lässt jedes davon ersetzbar.

  • Kein Generator, nichts zum Ejecten — dein Repository behält seine eigenen Dateien.
  • Eine Komponente überschreiben heißt: die eigene an denselben Pfad legen.
  • Baut zu einer statischen Seite — deploybar überall, wo Nuxt läuft.
Installation
export default defineNuxtConfig({
  extends: ['@kirchdev/duxt']
})

Quellen

Mehrere Repositories, mehrere Versionen, eine Liste

Eine Quelle ist ein Repository und die Refs, die daraus veröffentlicht werden. duxt macht daraus eine Collection je Version und Repository — samt der URL-Präfixe, die sie trennen. Entschieden zur Build-Zeit, damit zur Laufzeit nichts aufgelöst wird.

  • Klonen, Auth für private Repos und Caching kommen von Content v3 selbst — nicht nachgebaut.
  • Eine einzelne Quelle braucht gar kein Präfix — ein Segment mit nur einem Wert unterscheidet nichts.
  • Der Umschalter bleibt auf der Seite, die du liest — und sagt es, wenn es sie dort nicht gibt.
URLs und Versionen
sources: [
  // The repository you are standing in.
  { path: 'docs' },

  // Another one, at three of its tags.
  {
    repo: 'acme/api',
    path: 'docs',
    refs: [
      { branch: 'main', status: 'upcoming' },
      { tag: 'v2.0.0' },
      { tag: 'v1.4.0', status: 'eol' }
    ]
  }
],
sourceOptions: { defaultRef: 'v2.0.0' }

API-Referenz

Ein OpenAPI-Dokument, veröffentlicht als Seiten

Zeig mit einer Quelle auf die Datei, und duxt baut daraus eine Übersicht, eine Seite je Tag und eine je Operation — mit aufgelösten Schemas, benannter Security und abgeleiteten Beispielen. Das Ergebnis ist eine ganz normale Collection, und genau das ist der Punkt.

  • Die Suche findet sie, llms.txt listet sie, die Sitemap führt sie.
  • Versioniert wie die Prosa: Der Umschalter wechselt zwischen zwei Versionen desselben Endpunkts.
  • Steht neben deinem Markdown — eine Operationsseite kann eigene Prosa tragen.
Referenz öffnen
http://localhost/de-DE/demo/api/consignments
Öffnen

Ausprobieren

Ein Client, der den echten Request schickt

Jede Operationsseite bringt einen Client mit. Parameter ausfüllen, den Body gegen sein Schema bearbeiten, aus dem eigenen Browser abschicken — und die Antwort neben dem Beispiel lesen, das sie erzeugt hätte.

  • Sieben Beispiele ab Werk, zwölf mitgeliefert, oder ein eigenes — mitgeschrieben beim Tippen.
  • Der Body-Editor ist CodeMirror, bei Bedarf geladen: Eine Seite ohne Endpunkt lädt davon nichts.
  • Dein Token bleibt im Browser — es gibt hier keinen Server, an den es ginge.
Wie der Client funktioniert

Anfrage senden

Authentifizierung

Was Sie hier eingeben, bleibt in diesem Tab, wird nicht gespeichert und geht nur an den gewählten Server.

Die Anfrage sendet Ihr Browser direkt an diesen Server.

In deinem Stack

Derselbe Request, in deiner Sprache

Kein Beispiel für einen Request wie den obigen — genau dieser. Der gewählte Server, das eingetippte Token, der bearbeitete Body — bei jedem Tastendruck neu geschrieben, in den Client, in den du ihn einfügen wirst.

  • Eine Komponente — Beispiel und Button können gar nicht auseinanderlaufen.
  • Eigene über `requestSamples` ergänzen — oder die weglassen, die deine Leser nicht nutzen.
Request-Beispiele

Beispielanfrage

curl '/demo/echo' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer demo-token' \
  -d '{
  "reference": "HB-1042",
  "mode": "sea"
}'

Maschinenleser

Auch für das Modell geschrieben, das mitliest

Derselbe Inhalt, ein zweites Mal veröffentlicht in den Formen, die eine Maschine liest: ein Index unter llms.txt, die ganze Seite unter llms-full.txt, jede Seite als eigenes Markdown — und eine MCP-Route, die ein Assistent durchsuchen kann.

  • Build-Ausgabe, kein Laufzeitdienst — die Dateien liegen mit den Seiten im CDN.
  • Jede Seite hat ein „als Markdown kopieren“ — und einen Link, der sie in einem Assistenten öffnet.
  • Die MCP-Route liefert dieselben Collections, die auch die Seite abfragt — eine Quelle, zwei Leser.
Maschinenleser
http://localhost/de-DE/llms.txt
Öffnen

Funktionen