[{"data":1,"prerenderedAt":1326},["ShallowReactive",2],{"duxt-navigation-docs-docs_de":3,"i-lucide:compass":833,"i-lucide:book-open":838,"i-lucide:list":840,"i-lucide:ruler":842,"i-lucide:gavel":844,"i-lucide:rocket":846,"i-lucide:download":848,"i-lucide:settings":850,"i-lucide:menu":852,"i-lucide:chevron-down":854,"i-lucide:search":856,"i-simple-icons:github":858,"i-flag:de-4x3":860,"i-lucide:moon":864,"docs-de-DE-\u002Fgetting-started\u002Fconfiguration":866,"i-lucide:copy":1302,"i-lucide:thumbs-up":1304,"i-lucide:thumbs-down":1306,"i-lucide:star":1308,"i-lucide:circle-alert":1310,"i-simple-icons:discord":1312,"i-lucide:book-open-text":1314,"i-lucide:arrow-up-right":1316,"i-lucide:pencil":1318,"duxt-code-ts-i18n: { baseUrl: 'https:\u002F\u002Fdocs.example.com' }\n":785,"duxt-code-ts-export default defineAppConfig({\n  duxt: {\n    title: 'mein Projekt',\n    version: 'v1.4.0',\n    sources: [{ path: 'docs' }]\n  }\n});\n":785,"duxt-code-ts-sections: [\n  { label: 'Anleitungen', to: '\u002Fguides', icon: 'lucide:book-open' },\n  { label: 'Referenz', to: '\u002Freference', icon: 'lucide:list' }\n]\n":785,"duxt-code-ts-links: [\n  {\n    icon: 'simple-icons:github',\n    to: 'https:\u002F\u002Fgithub.com\u002Fdu\u002Fdein-projekt',\n    label: { 'en-GB': 'Repository', 'de-DE': 'Repository' }\n  }\n]\n":785,"i-lucide:triangle-alert":1320,"i-lucide:arrow-left":1322,"i-lucide:chevron-right":1324},[4,25,94,148,744,752,772,827],{"title":5,"path":6,"stem":7,"children":8,"description":12},"Einführung","\u002Fgetting-started","1.getting-started",[9,13,19],{"title":5,"path":6,"stem":10,"icon":11,"description":12},"1.getting-started\u002Findex","lucide:rocket","Was duxt ist, und was mit einer einzigen Konfigurationszeile ankommt.",{"title":14,"path":15,"stem":16,"icon":17,"description":18},"Installation","\u002Fgetting-started\u002Finstallation","1.getting-started\u002F1.installation","lucide:download","Ebene einbinden, erweitern, Markdown schreiben.",{"title":20,"path":21,"stem":22,"icon":23,"description":24},"Konfiguration","\u002Fgetting-started\u002Fconfiguration","1.getting-started\u002F2.configuration","lucide:settings","Eine Datei konfiguriert die ganze Seite — was hineingehört, und wie sie zusammengeführt wird.",{"title":26,"path":27,"stem":28,"children":29,"description":33},"Konzepte","\u002Fconcepts","2.concepts",[30,34,40,46,52,58,64,70,76,82,88],{"title":26,"path":27,"stem":31,"icon":32,"description":33},"2.concepts\u002Findex","lucide:compass","Wie die Ebene funktioniert — das Quellenmodell, das URL-Schema, die Collections und die Prüfungen.",{"title":35,"path":36,"stem":37,"icon":38,"description":39},"Ebenen und Überschreiben","\u002Fconcepts\u002Flayers","2.concepts\u002F1.layers","lucide:layers","Was eine Nuxt-Ebene dir gibt, was sie dir nimmt, und welche Pfade nicht so auflösen, wie sie sich lesen.",{"title":41,"path":42,"stem":43,"icon":44,"description":45},"Theming","\u002Fconcepts\u002Ftheming","2.concepts\u002F10.theming","lucide:palette","Wie das Theme gebaut ist — eigene Komponenten, eine Token-Ebene und ein Dark Mode, der über eine Klasse schaltet.",{"title":47,"path":48,"stem":49,"icon":50,"description":51},"Quellen","\u002Fconcepts\u002Fsources","2.concepts\u002F2.sources","lucide:git-branch","Eine Liste von Quellen wird zu jeder Collection, jedem Präfix und jeder Version, die die Seite ausliefert.",{"title":53,"path":54,"stem":55,"icon":56,"description":57},"URLs und Versionen","\u002Fconcepts\u002Furls-and-versions","2.concepts\u002F3.urls-and-versions","lucide:git-compare","Wie die Repository- und Versionssegmente erscheinen, und was einem Leser in einer alten Version gesagt wird.",{"title":59,"path":60,"stem":61,"icon":62,"description":63},"Collections","\u002Fconcepts\u002Fcollections","2.concepts\u002F4.collections","lucide:database","Was Content aus den Quellen baut, und die vier Dinge, die das Schema hinzufügt.",{"title":65,"path":66,"stem":67,"icon":68,"description":69},"Generierte Sektionen","\u002Fconcepts\u002Fgenerated-sections","2.concepts\u002F5.generated-sections","lucide:file-cog","Ein Artefakt plus ein Typ, als Seiten veröffentlicht — was die Registry ist, und welche zwei Richtlinien ein Typ beantwortet.",{"title":71,"path":72,"stem":73,"icon":74,"description":75},"Was der Build prüft","\u002Fconcepts\u002Fbuild-checks","2.concepts\u002F6.build-checks","lucide:shield-check","Die stillen Fehlschläge dieser Ebene, in Meldungen verwandelt.",{"title":77,"path":78,"stem":79,"icon":80,"description":81},"Maschinelle Leser","\u002Fconcepts\u002Fmachine-readers","2.concepts\u002F7.machine-readers","lucide:bot","Was ein Modell bekommt — llms.txt, das rohe Markdown jeder Seite und ein echter MCP-Server.",{"title":83,"path":84,"stem":85,"icon":86,"description":87},"SEO","\u002Fconcepts\u002Fseo","2.concepts\u002F8.seo","lucide:search","Was jede Seite für Crawler und Social Cards ausgibt, welches Modul es schreibt, und der eine Wert, den die Ebene nicht erraten kann.",{"title":89,"path":90,"stem":91,"icon":92,"description":93},"Lokalisierung","\u002Fconcepts\u002Flocalisation","2.concepts\u002F9.localisation","lucide:languages","Sieben Locales bringt die Ebene mit, und jede konfigurierte Zeichenkette hat drei Formen.",{"title":95,"path":96,"stem":97,"children":98,"description":102},"Anleitungen","\u002Fguides","3.guides",[99,103,109,114,119,124,130,136,142],{"title":95,"path":96,"stem":100,"icon":101,"description":102},"3.guides\u002Findex","lucide:book-open","Eine Aufgabe je Seite, von vorn bis hinten — mehrere Repositories, mehrere Versionen, mehrere Sprachen und ein Deployment.",{"title":104,"path":105,"stem":106,"icon":107,"description":108},"Mehrere Repositories","\u002Fguides\u002Fseveral-repositories","3.guides\u002F1.several-repositories","lucide:folder-git","Die Dokumentation mehrerer Projekte von einer Seite ausliefern.",{"title":110,"path":111,"stem":112,"icon":56,"description":113},"Mehrere Versionen","\u002Fguides\u002Fseveral-versions","3.guides\u002F2.several-versions","Dieselbe Dokumentation an mehreren Refs ausliefern, mit Umschalter und Banner.",{"title":115,"path":116,"stem":117,"icon":92,"description":118},"Mehrere Sprachen","\u002Fguides\u002Fseveral-languages","3.guides\u002F3.several-languages","Die Oberfläche in mehreren Sprachen ausliefern — und die Seiten selbst übersetzen.",{"title":120,"path":121,"stem":122,"icon":44,"description":123},"Das Theme überschreiben","\u002Fguides\u002Foverride-the-theme","3.guides\u002F4.override-the-theme","Eine Farbe ändern, eine Komponente ersetzen, ein shadcn-vue-Primitiv hinzufügen.",{"title":125,"path":126,"stem":127,"icon":128,"description":129},"Eine Seite verschieben","\u002Fguides\u002Fmove-a-page","3.guides\u002F5.move-a-page","lucide:signpost","redirectFrom im Frontmatter, in Routenregeln unter jedem Präfix übersetzt.",{"title":131,"path":132,"stem":133,"icon":134,"description":135},"Eine Seite ausliefern","\u002Fguides\u002Fdeploy-a-site","3.guides\u002F6.deploy-a-site","lucide:cloud-upload","Wo eine duxt-Seite laufen kann, was sie dort braucht, und warum Inhalte nicht zur Laufzeit aufgefrischt werden.",{"title":137,"path":138,"stem":139,"icon":140,"description":141},"Seiten-Feedback sammeln","\u002Fguides\u002Fcollect-page-feedback","3.guides\u002F7.collect-page-feedback","lucide:thumbs-up","DuxtPageFeedback umhüllen und die Antwort dort behalten, wo deine Analytik ohnehin liegt.",{"title":143,"path":144,"stem":145,"icon":146,"description":147},"Deiner Website eine Marke geben","\u002Fguides\u002Fbrand-your-site","3.guides\u002F8.brand-your-site","lucide:badge-check","Name, Wortmarke und Icons setzen, damit die Website als deine gelesen wird und nicht als die der Ebene.",{"title":149,"path":150,"stem":151,"children":152,"description":156},"Referenz","\u002Freference","4.reference",[153,157,161,193,197,203,343,490,612,657,717],{"title":149,"path":150,"stem":154,"icon":155,"description":156},"4.reference\u002Findex","lucide:list","Die öffentliche Oberfläche der Ebene — Konfigurationsschlüssel, Frontmatter, Komponenten, Composables und Endpunkte.",{"title":20,"path":158,"stem":159,"icon":23,"description":160},"\u002Freference\u002Fconfiguration","4.reference\u002F1.configuration","Jeder Schlüssel unter duxt in app.config.ts — was er steuert, und wann er gelesen wird.",{"title":162,"path":163,"stem":164,"children":165,"icon":167,"description":168},"Changelog","\u002Freference\u002Fchangelog","4.reference\u002F10.changelog\u002Findex",[166,169,175,181,187],{"title":162,"path":163,"stem":164,"icon":167,"description":168},"lucide:tag","Ein Release-Log, als Seiten veröffentlicht — eine Zeitleiste, eine Seite pro Release, und ein Feed.",{"title":170,"path":171,"stem":172,"icon":173,"description":174},"Die Sektion deklarieren","\u002Freference\u002Fchangelog\u002Fsection","4.reference\u002F10.changelog\u002F1.section","lucide:file-clock","Der Sektionstyp `changelog` — wo die Datei liegt, und welche zwei Richtlinien er beantwortet.",{"title":176,"path":177,"stem":178,"icon":179,"description":180},"Granularität","\u002Freference\u002Fchangelog\u002Fgranularity","4.reference\u002F10.changelog\u002F2.granularity","lucide:split","Eine Seite pro Release, oder die Datei als die eine Seite, als die sie geschrieben wurde.",{"title":182,"path":183,"stem":184,"icon":185,"description":186},"Was gelesen wird","\u002Freference\u002Fchangelog\u002Fwhat-is-read","4.reference\u002F10.changelog\u002F3.what-is-read","lucide:scan-text","Welche Überschriften zu Releases werden, welche zu Gruppen, und was mit dem Rest passiert.",{"title":188,"path":189,"stem":190,"icon":191,"description":192},"Layout und Komponenten","\u002Freference\u002Fchangelog\u002Fcomponents","4.reference\u002F10.changelog\u002F4.components","lucide:box","Das Layout, in dem eine getrennte Historie rendert, und die zwei MDC-Komponenten, aus denen ihre Seiten bestehen.",{"title":47,"path":194,"stem":195,"icon":50,"description":196},"\u002Freference\u002Fsources","4.reference\u002F2.sources","Die Felder eines Quelleneintrags, seine Refs, und die Optionen, die die URLs formen.",{"title":198,"path":199,"stem":200,"icon":201,"description":202},"Frontmatter","\u002Freference\u002Ffrontmatter","4.reference\u002F3.frontmatter","lucide:file-code","Die Felder, die eine Seite über Titel und Beschreibung hinaus tragen darf, und die zwei, die der Build füllt.",{"title":204,"path":205,"stem":206,"children":207,"icon":209,"description":210},"MDC-Komponenten","\u002Freference\u002Fmdc-components","4.reference\u002F4.mdc-components\u002Findex",[208,211,217,223,229,235,241,247,253,259,297,303,308,314,320,326,332,338],{"title":204,"path":205,"stem":206,"icon":209,"description":210},"lucide:blocks","Die Blöcke, die eine Markdown-Seite aufrufen kann, je eine Seite, mit ihren Props.",{"title":212,"path":213,"stem":214,"icon":215,"description":216},"Callout","\u002Freference\u002Fmdc-components\u002Fcallout","4.reference\u002F4.mdc-components\u002F1.callout","lucide:message-square-warning","Ein Einschub, an dem der Leser innehalten soll — ein Tipp, eine Warnung, eine Gefahr.",{"title":218,"path":219,"stem":220,"icon":221,"description":222},"Paketmanager","\u002Freference\u002Fmdc-components\u002Fpackage-managers","4.reference\u002F4.mdc-components\u002F10.package-managers","lucide:package","Ein Befehl, ein Tab je Paketmanager, über Seiten hinweg gemerkt.",{"title":224,"path":225,"stem":226,"icon":227,"description":228},"Dateibaum","\u002Freference\u002Fmdc-components\u002Ffile-tree","4.reference\u002F4.mdc-components\u002F11.file-tree","lucide:folder-tree","Eine Ordnerstruktur, mit Icons je Dateityp.",{"title":230,"path":231,"stem":232,"icon":233,"description":234},"Vorschau","\u002Freference\u002Fmdc-components\u002Fpreview","4.reference\u002F4.mdc-components\u002F12.preview","lucide:eye","Eine Komponente, so gerendert, wie die Seite sie rendert, mit ihrem Quelltext daneben.",{"title":236,"path":237,"stem":238,"icon":239,"description":240},"Seitenkarten","\u002Freference\u002Fmdc-components\u002Fpage-cards","4.reference\u002F4.mdc-components\u002F13.page-cards","lucide:layout-grid","Die Kinder einer Sektion, als Karten.",{"title":242,"path":243,"stem":244,"icon":245,"description":246},"Partial","\u002Freference\u002Fmdc-components\u002Fpartial","4.reference\u002F4.mdc-components\u002F14.partial","lucide:puzzle","Ein Block, einmal geschrieben und in jeder Quelle gerendert, die ihn braucht.",{"title":248,"path":249,"stem":250,"icon":251,"description":252},"Since","\u002Freference\u002Fmdc-components\u002Fsince","4.reference\u002F4.mdc-components\u002F15.since","lucide:milestone","Die Version, in der etwas kam, neben einer Überschrift.",{"title":254,"path":255,"stem":256,"icon":257,"description":258},"Mermaid","\u002Freference\u002Fmdc-components\u002Fmermaid","4.reference\u002F4.mdc-components\u002F16.mermaid","lucide:workflow","Ein Diagramm aus einem Fence oder einem Prop.",{"title":260,"path":261,"stem":262,"children":263,"icon":265,"description":266},"Prose-Overrides","\u002Freference\u002Fmdc-components\u002Fprose","4.reference\u002F4.mdc-components\u002F17.prose\u002Findex",[264,267,273,279,285,291],{"title":260,"path":261,"stem":262,"icon":265,"description":266},"lucide:type","Was die Ebene an schlichtem Markdown ändert — Links, Überschriften, Bilder, Code und Tabellen.",{"title":268,"path":269,"stem":270,"icon":271,"description":272},"ProseA","\u002Freference\u002Fmdc-components\u002Fprose\u002Fprose-a","4.reference\u002F4.mdc-components\u002F17.prose\u002F1.prose-a","lucide:link","Ein Link, aufgelöst gegen die Quelle, in der er geschrieben wurde.",{"title":274,"path":275,"stem":276,"icon":277,"description":278},"ProseH2, ProseH3, ProseH4","\u002Freference\u002Fmdc-components\u002Fprose\u002Fprose-headings","4.reference\u002F4.mdc-components\u002F17.prose\u002F2.prose-headings","lucide:heading","Überschriften, jede mit einem Permalink-Anker.",{"title":280,"path":281,"stem":282,"icon":283,"description":284},"ProseImg","\u002Freference\u002Fmdc-components\u002Fprose\u002Fprose-img","4.reference\u002F4.mdc-components\u002F17.prose\u002F3.prose-img","lucide:image","Ein Bild: Theme-bewusst und zoombar.",{"title":286,"path":287,"stem":288,"icon":289,"description":290},"ProsePre","\u002Freference\u002Fmdc-components\u002Fprose\u002Fprose-pre","4.reference\u002F4.mdc-components\u002F17.prose\u002F4.prose-pre","lucide:terminal","Der Code-Block: Dateiname, Sprach-Icon, Kopier-Button.",{"title":292,"path":293,"stem":294,"icon":295,"description":296},"ProseTable","\u002Freference\u002Fmdc-components\u002Fprose\u002Fprose-table","4.reference\u002F4.mdc-components\u002F17.prose\u002F5.prose-table","lucide:table","Eine Tabelle, die scrollt statt der Seite.",{"title":298,"path":299,"stem":300,"icon":301,"description":302},"Schritte","\u002Freference\u002Fmdc-components\u002Fsteps","4.reference\u002F4.mdc-components\u002F2.steps","lucide:list-ordered","Eine geordnete Liste, gezeichnet als nummerierte Schritte an einer Schiene.",{"title":304,"path":305,"stem":306,"icon":201,"description":307},"Code-Gruppe","\u002Freference\u002Fmdc-components\u002Fcode-group","4.reference\u002F4.mdc-components\u002F3.code-group","Mehrere Fences als ein Block mit Tabs, beschriftet mit dem Dateinamen.",{"title":309,"path":310,"stem":311,"icon":312,"description":313},"Tab-Gruppe","\u002Freference\u002Fmdc-components\u002Ftab-group","4.reference\u002F4.mdc-components\u002F4.tab-group","lucide:panels-top-left","Tabs für alles, was kein Code ist.",{"title":315,"path":316,"stem":317,"icon":318,"description":319},"Tab","\u002Freference\u002Fmdc-components\u002Ftab","4.reference\u002F4.mdc-components\u002F5.tab","lucide:square","Ein Panel einer Tab-Gruppe.",{"title":321,"path":322,"stem":323,"icon":324,"description":325},"Accordion","\u002Freference\u002Fmdc-components\u002Faccordion","4.reference\u002F4.mdc-components\u002F6.accordion","lucide:chevrons-up-down","Aufklappbare Abschnitte — eine FAQ, oder Antworten, aus denen ein Leser wählt.",{"title":327,"path":328,"stem":329,"icon":330,"description":331},"Accordion-Element","\u002Freference\u002Fmdc-components\u002Faccordion-item","4.reference\u002F4.mdc-components\u002F7.accordion-item","lucide:chevron-down","Ein aufklappbarer Abschnitt.",{"title":333,"path":334,"stem":335,"icon":336,"description":337},"Feldgruppe","\u002Freference\u002Fmdc-components\u002Ffield-group","4.reference\u002F4.mdc-components\u002F8.field-group","lucide:list-tree","Eine Liste von Feldern als ein Block.",{"title":339,"path":340,"stem":341,"icon":167,"description":342},"Feld","\u002Freference\u002Fmdc-components\u002Ffield","4.reference\u002F4.mdc-components\u002F9.field","Ein Parameter, eine Eigenschaft oder eine Option, mit Typ und Standard.",{"title":344,"path":345,"stem":346,"children":347,"icon":349,"description":350},"Komponenten","\u002Freference\u002Fcomponents","4.reference\u002F5.components\u002Findex",[348,351,371,412,459],{"title":344,"path":345,"stem":346,"icon":349,"description":350},"lucide:component","Die eigenen Komponenten der Ebene, je eine Seite — wofür jede da ist, und was sie nimmt.",{"title":352,"path":353,"stem":354,"children":355,"icon":357,"description":358},"Layout","\u002Freference\u002Fcomponents\u002Flayout","4.reference\u002F5.components\u002F1.layout\u002Findex",[356,359,365],{"title":352,"path":353,"stem":354,"icon":357,"description":358},"lucide:layout-panel-top","Die zwei Komponenten, die eine Seite rahmen — die Navigationsleiste und der Fußbereich.",{"title":360,"path":361,"stem":362,"icon":363,"description":364},"DuxtHeader","\u002Freference\u002Fcomponents\u002Flayout\u002Fduxt-header","4.reference\u002F5.components\u002F1.layout\u002F1.duxt-header","lucide:panel-top","Die Navbar: Titel, Navigation, Suche und die Icon-Links.",{"title":366,"path":367,"stem":368,"icon":369,"description":370},"DuxtFooter","\u002Freference\u002Fcomponents\u002Flayout\u002Fduxt-footer","4.reference\u002F5.components\u002F1.layout\u002F2.duxt-footer","lucide:panel-bottom","Der Fußbereich: der Name der Seite, ihre rechtlichen Links und die eigene Zeile der Ebene.",{"title":372,"path":373,"stem":374,"children":375,"icon":32,"description":377},"Navigation","\u002Freference\u002Fcomponents\u002Fnavigation","4.reference\u002F5.components\u002F2.navigation\u002Findex",[376,378,384,389,395,401,406],{"title":372,"path":373,"stem":374,"icon":32,"description":377},"Sich zurechtfinden — die Sektionszeile, die Seitenleiste, die Spur, das Inhaltsverzeichnis und vor\u002Fzurück.",{"title":379,"path":380,"stem":381,"icon":382,"description":383},"DuxtSections","\u002Freference\u002Fcomponents\u002Fnavigation\u002Fduxt-sections","4.reference\u002F5.components\u002F2.navigation\u002F1.duxt-sections","lucide:rows-3","Die zweite Navigationszeile — die obersten Teile der Dokumentation.",{"title":385,"path":386,"stem":387,"icon":336,"description":388},"DuxtNavigation","\u002Freference\u002Fcomponents\u002Fnavigation\u002Fduxt-navigation","4.reference\u002F5.components\u002F2.navigation\u002F2.duxt-navigation","Der Baum der Seitenleiste.",{"title":390,"path":391,"stem":392,"icon":393,"description":394},"DuxtNavigationLink","\u002Freference\u002Fcomponents\u002Fnavigation\u002Fduxt-navigation-link","4.reference\u002F5.components\u002F2.navigation\u002F3.duxt-navigation-link","lucide:link-2","Ein Eintrag der Seitenleiste.",{"title":396,"path":397,"stem":398,"icon":399,"description":400},"DuxtBreadcrumb","\u002Freference\u002Fcomponents\u002Fnavigation\u002Fduxt-breadcrumb","4.reference\u002F5.components\u002F2.navigation\u002F4.duxt-breadcrumb","lucide:chevrons-right","Die Spur über dem Seitentitel.",{"title":402,"path":403,"stem":404,"icon":155,"description":405},"DuxtToc","\u002Freference\u002Fcomponents\u002Fnavigation\u002Fduxt-toc","4.reference\u002F5.components\u002F2.navigation\u002F5.duxt-toc","Das Inhaltsverzeichnis und der Nebenbereich darunter.",{"title":407,"path":408,"stem":409,"icon":410,"description":411},"DuxtPageNav","\u002Freference\u002Fcomponents\u002Fnavigation\u002Fduxt-page-nav","4.reference\u002F5.components\u002F2.navigation\u002F6.duxt-page-nav","lucide:arrow-left-right","Zurück und weiter, begrenzt durch die Sektion.",{"title":413,"path":414,"stem":415,"children":416,"icon":418,"description":419},"Bedienelemente","\u002Freference\u002Fcomponents\u002Fcontrols","4.reference\u002F5.components\u002F3.controls\u002Findex",[417,420,425,430,436,441,447,453],{"title":413,"path":414,"stem":415,"icon":418,"description":419},"lucide:sliders-horizontal","Was ein Leser bedient — die Suche, die Umschalter, die Tastenkürzel-Übersicht und zwei Anzeigen.",{"title":421,"path":422,"stem":423,"icon":86,"description":424},"DuxtSearch","\u002Freference\u002Fcomponents\u002Fcontrols\u002Fduxt-search","4.reference\u002F5.components\u002F3.controls\u002F1.duxt-search","Suche über jede Quelle hinweg, gemeinsam bewertet.",{"title":426,"path":427,"stem":428,"icon":38,"description":429},"DuxtVersion","\u002Freference\u002Fcomponents\u002Fcontrols\u002Fduxt-version","4.reference\u002F5.components\u002F3.controls\u002F2.duxt-version","Das Versions-Abzeichen, und der Umschalter, wenn es mehr als eine gibt.",{"title":431,"path":432,"stem":433,"icon":434,"description":435},"DuxtVersionBanner","\u002Freference\u002Fcomponents\u002Fcontrols\u002Fduxt-version-banner","4.reference\u002F5.components\u002F3.controls\u002F3.duxt-version-banner","lucide:triangle-alert","Der Balken, der einem Leser sagt, dass diese Version nicht die aktuelle ist.",{"title":437,"path":438,"stem":439,"icon":92,"description":440},"DuxtLocale","\u002Freference\u002Fcomponents\u002Fcontrols\u002Fduxt-locale","4.reference\u002F5.components\u002F3.controls\u002F4.duxt-locale","Der Sprachumschalter.",{"title":442,"path":443,"stem":444,"icon":445,"description":446},"DuxtProgress","\u002Freference\u002Fcomponents\u002Fcontrols\u002Fduxt-progress","4.reference\u002F5.components\u002F3.controls\u002F5.duxt-progress","lucide:loader","Wie weit unten auf der Seite der Leser ist.",{"title":448,"path":449,"stem":450,"icon":451,"description":452},"DuxtShortcuts","\u002Freference\u002Fcomponents\u002Fcontrols\u002Fduxt-shortcuts","4.reference\u002F5.components\u002F3.controls\u002F6.duxt-shortcuts","lucide:keyboard","Die Übersicht der Tastenkürzel, auf ?.",{"title":454,"path":455,"stem":456,"icon":457,"description":458},"DuxtSkipLink","\u002Freference\u002Fcomponents\u002Fcontrols\u002Fduxt-skip-link","4.reference\u002F5.components\u002F3.controls\u002F7.duxt-skip-link","lucide:skip-forward","Das erste fokussierbare Element auf der Seite.",{"title":460,"path":461,"stem":462,"children":463,"icon":465,"description":466},"Seite","\u002Freference\u002Fcomponents\u002Fpage","4.reference\u002F5.components\u002F4.page\u002Findex",[464,467,473,479,484],{"title":460,"path":461,"stem":462,"icon":465,"description":466},"lucide:file-text","Die Komponenten, die zur Seite selbst gehören.",{"title":468,"path":469,"stem":470,"icon":471,"description":472},"DuxtPageInfo","\u002Freference\u002Fcomponents\u002Fpage\u002Fduxt-page-info","4.reference\u002F5.components\u002F4.page\u002F1.duxt-page-info","lucide:git-commit-horizontal","Woher die Seite kommt: Bearbeiten-Link, letzte Änderung, Mitwirkende.",{"title":474,"path":475,"stem":476,"icon":477,"description":478},"DuxtCopyPage","\u002Freference\u002Fcomponents\u002Fpage\u002Fduxt-copy-page","4.reference\u002F5.components\u002F4.page\u002F2.duxt-copy-page","lucide:clipboard-copy","Diese Seite an ein Modell übergeben — oder ihre Quelle lesen.",{"title":480,"path":481,"stem":482,"icon":140,"description":483},"DuxtPageFeedback","\u002Freference\u002Fcomponents\u002Fpage\u002Fduxt-page-feedback","4.reference\u002F5.components\u002F4.page\u002F3.duxt-page-feedback","„War diese Seite hilfreich?“ — ein Ereignis, und kein Backend.",{"title":485,"path":486,"stem":487,"icon":488,"description":489},"DuxtCodeBlock","\u002Freference\u002Fcomponents\u002Fpage\u002Fduxt-code-block","4.reference\u002F5.components\u002F4.page\u002F4.duxt-code-block","lucide:code","Die Karte um einen Codeblock.",{"title":491,"path":492,"stem":493,"children":494,"icon":496,"description":497},"Composables","\u002Freference\u002Fcomposables","4.reference\u002F6.composables\u002Findex",[495,498,532,561],{"title":491,"path":492,"stem":493,"icon":496,"description":497},"lucide:function-square","Die Funktionen, die die Ebene deinen eigenen Komponenten offenlegt, je eine Seite.",{"title":499,"path":500,"stem":501,"children":502,"icon":62,"description":504},"Konfiguration und Inhalt","\u002Freference\u002Fcomposables\u002Fconfig-and-content","4.reference\u002F6.composables\u002F1.config-and-content\u002Findex",[503,505,510,516,521,527],{"title":499,"path":500,"stem":501,"icon":62,"description":504},"Die zusammengeführte Konfiguration, und welche Collection die gerade gelesene Seite ausliefert.",{"title":506,"path":507,"stem":508,"icon":23,"description":509},"useDuxtConfig()","\u002Freference\u002Fcomposables\u002Fconfig-and-content\u002Fuse-duxt-config","4.reference\u002F6.composables\u002F1.config-and-content\u002F1.use-duxt-config","Die zusammengeführte Konfiguration, jedes Textfeld bereits aufgelöst.",{"title":511,"path":512,"stem":513,"icon":514,"description":515},"useDuxtCollection()","\u002Freference\u002Fcomposables\u002Fconfig-and-content\u002Fuse-duxt-collection","4.reference\u002F6.composables\u002F1.config-and-content\u002F2.use-duxt-collection","lucide:library","Welche Collection diese Route bedient.",{"title":517,"path":518,"stem":519,"icon":336,"description":520},"useDuxtNavigation()","\u002Freference\u002Fcomposables\u002Fconfig-and-content\u002Fuse-duxt-navigation","4.reference\u002F6.composables\u002F1.config-and-content\u002F3.use-duxt-navigation","Der Navigationsbaum der Collection, die diese Route bedient.",{"title":522,"path":523,"stem":524,"icon":525,"description":526},"useDuxtSection()","\u002Freference\u002Fcomposables\u002Fconfig-and-content\u002Fuse-duxt-section","4.reference\u002F6.composables\u002F1.config-and-content\u002F4.use-duxt-section","lucide:folder-open","Der Teil der Dokumentation, in dem diese Seite liegt.",{"title":528,"path":529,"stem":530,"icon":399,"description":531},"useDuxtBreadcrumb()","\u002Freference\u002Fcomposables\u002Fconfig-and-content\u002Fuse-duxt-breadcrumb","4.reference\u002F6.composables\u002F1.config-and-content\u002F5.use-duxt-breadcrumb","Die Spur von der Sektion hinunter zu einer Seite.",{"title":533,"path":534,"stem":535,"children":536,"icon":538,"description":539},"Pfade und Versionen","\u002Freference\u002Fcomposables\u002Fpaths-and-versions","4.reference\u002F6.composables\u002F2.paths-and-versions\u002Findex",[537,540,545,550,555],{"title":533,"path":534,"stem":535,"icon":538,"description":539},"lucide:route","Eine URL lesen, eine zurückschreiben, und wissen, welche Version gerade gelesen wird.",{"title":541,"path":542,"stem":543,"icon":251,"description":544},"useDuxtPath()","\u002Freference\u002Fcomposables\u002Fpaths-and-versions\u002Fuse-duxt-path","4.reference\u002F6.composables\u002F2.paths-and-versions\u002F1.use-duxt-path","Der Pfad, unter dem die Dokumentation liegt, ohne Locale-Segment.",{"title":546,"path":547,"stem":548,"icon":271,"description":549},"useDuxtLink()","\u002Freference\u002Fcomposables\u002Fpaths-and-versions\u002Fuse-duxt-link","4.reference\u002F6.composables\u002F2.paths-and-versions\u002F2.use-duxt-link","Ein Dokumentationspfad, wieder als Link ausgeschrieben.",{"title":551,"path":552,"stem":553,"icon":38,"description":554},"useDuxtVersion()","\u002Freference\u002Fcomposables\u002Fpaths-and-versions\u002Fuse-duxt-version","4.reference\u002F6.composables\u002F2.paths-and-versions\u002F3.use-duxt-version","Was der Umschalter zeigt, was das Banner sagt, ob indexiert wird.",{"title":556,"path":557,"stem":558,"icon":559,"description":560},"useDuxtSiteUrl()","\u002Freference\u002Fcomposables\u002Fpaths-and-versions\u002Fuse-duxt-site-url","4.reference\u002F6.composables\u002F2.paths-and-versions\u002F4.use-duxt-site-url","lucide:globe","Der konfigurierte Ursprung, und Pfade absolut gemacht.",{"title":562,"path":563,"stem":564,"children":565,"icon":101,"description":567},"Leseerlebnis","\u002Freference\u002Fcomposables\u002Freading","4.reference\u002F6.composables\u002F3.reading\u002Findex",[566,568,573,579,584,590,596,601,607],{"title":562,"path":563,"stem":564,"icon":101,"description":567},"Suche, Überschriften, Fokus, Verlauf und die Entscheidungen, die ein Leser trifft.",{"title":569,"path":570,"stem":571,"icon":86,"description":572},"useDuxtSearch()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-duxt-search","4.reference\u002F6.composables\u002F3.reading\u002F1.use-duxt-search","Suche über jede Quelle, gemeinsam bewertet.",{"title":574,"path":575,"stem":576,"icon":577,"description":578},"useFuzzySearch()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-fuzzy-search","4.reference\u002F6.composables\u002F3.reading\u002F2.use-fuzzy-search","lucide:spell-check","Tippfehlertoleranz neben dem exakten Index.",{"title":580,"path":581,"stem":582,"icon":277,"description":583},"useActiveHeading()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-active-heading","4.reference\u002F6.composables\u002F3.reading\u002F3.use-active-heading","Die Überschrift, die gerade im Blick ist.",{"title":585,"path":586,"stem":587,"icon":588,"description":589},"useDuxtPageFocus()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-duxt-page-focus","4.reference\u002F6.composables\u002F3.reading\u002F4.use-duxt-page-focus","lucide:focus","Setzt den Fokus nach einer clientseitigen Navigation auf die Überschrift.",{"title":591,"path":592,"stem":593,"icon":594,"description":595},"useRecentPages()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-recent-pages","4.reference\u002F6.composables\u002F3.reading\u002F5.use-recent-pages","lucide:history","Die letzten fünf Seiten, die dieser Leser geöffnet hat.",{"title":597,"path":598,"stem":599,"icon":221,"description":600},"usePackageManager()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-package-manager","4.reference\u002F6.composables\u002F3.reading\u002F6.use-package-manager","Der Paketmanager, den ein Leser gewählt hat.",{"title":602,"path":603,"stem":604,"icon":605,"description":606},"useDuxtToast()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-duxt-toast","4.reference\u002F6.composables\u002F3.reading\u002F7.use-duxt-toast","lucide:bell","Benachrichtigungen, gekapselt, damit keine Komponente die Bibliothek importiert.",{"title":608,"path":609,"stem":610,"icon":451,"description":611},"useDuxtShortcuts()","\u002Freference\u002Fcomposables\u002Freading\u002Fuse-duxt-shortcuts","4.reference\u002F6.composables\u002F3.reading\u002F8.use-duxt-shortcuts","Die Tasten, auf die das Theme hört.",{"title":613,"path":614,"stem":615,"children":616,"icon":538,"description":618},"Endpunkte","\u002Freference\u002Fendpoints","4.reference\u002F7.endpoints\u002Findex",[617,619,624,630,635,640,645,651],{"title":613,"path":614,"stem":615,"icon":538,"description":618},"Alles, was die Seite außer Seiten ausliefert, je eine Seite.",{"title":620,"path":621,"stem":622,"icon":465,"description":623},"\u002Fllms.txt","\u002Freference\u002Fendpoints\u002Fllms-txt","4.reference\u002F7.endpoints\u002F1.llms-txt","Die Dokumentation als Markdown-Index, nach llmstxt.org.",{"title":625,"path":626,"stem":627,"icon":628,"description":629},"\u002Fllms-full.txt","\u002Freference\u002Fendpoints\u002Fllms-full-txt","4.reference\u002F7.endpoints\u002F2.llms-full-txt","lucide:file-stack","Dieselben Seiten, vollständig, in einer Markdown-Datei.",{"title":631,"path":632,"stem":633,"icon":201,"description":634},"\u003Cseite>.md","\u002Freference\u002Fendpoints\u002Fpage-markdown","4.reference\u002F7.endpoints\u002F3.page-markdown","Der Quelltext jeder Seite, unter ihrer eigenen URL plus .md.",{"title":636,"path":637,"stem":638,"icon":80,"description":639},"\u002Fmcp","\u002Freference\u002Fendpoints\u002Fmcp","4.reference\u002F7.endpoints\u002F4.mcp","Ein MCP-Server über denselben Inhalten.",{"title":641,"path":642,"stem":643,"icon":86,"description":644},"\u002Fsitemap.xml und \u002Frobots.txt","\u002Freference\u002Fendpoints\u002Fsitemap-and-robots","4.reference\u002F7.endpoints\u002F5.sitemap-and-robots","Worauf ein Crawler gezeigt wird, und wovon er ferngehalten wird.",{"title":646,"path":647,"stem":648,"icon":649,"description":650},"\u002Frss.xml","\u002Freference\u002Fendpoints\u002Frss-xml","4.reference\u002F7.endpoints\u002F6.rss-xml","lucide:rss","Der Feed, sobald eine Sektion benannt ist.",{"title":652,"path":653,"stem":654,"icon":655,"description":656},"\u002F_duxt\u002Fdevtools","\u002Freference\u002Fendpoints\u002Fdevtools","4.reference\u002F7.endpoints\u002F7.devtools","lucide:wrench","Die Route, unter der das Nuxt-Devtools-Panel ausgeliefert wird. Nur im Dev-Server.",{"title":658,"path":659,"stem":660,"children":661,"icon":655,"description":663},"Devtools","\u002Freference\u002Fdevtools","4.reference\u002F8.devtools\u002Findex",[662,664,668,673,678,684,690,696,701,706,711],{"title":658,"path":659,"stem":660,"icon":655,"description":663},"Zehn Panels, die zeigen, was aus deinen Quellen geworden ist. Nur im Dev-Modus.",{"title":47,"path":665,"stem":666,"icon":514,"description":667},"\u002Freference\u002Fdevtools\u002Fsources","4.reference\u002F8.devtools\u002F1.sources","Was aus `duxt.sources` geworden ist — eine Collection je Quelle, Version und Sprache.",{"title":669,"path":670,"stem":671,"icon":128,"description":672},"Weiterleitungen","\u002Freference\u002Fdevtools\u002Fredirects","4.reference\u002F8.devtools\u002F10.redirects","Jeder Redirect, den der Server ausliefert, und welche davon die Ebene geschrieben hat.",{"title":674,"path":675,"stem":676,"icon":538,"description":677},"Pfade","\u002Freference\u002Fdevtools\u002Fpaths","4.reference\u002F8.devtools\u002F2.paths","URL einfügen und sehen, welche Quelle sie beansprucht und was sie dort findet.",{"title":679,"path":680,"stem":681,"icon":682,"description":683},"Seiten","\u002Freference\u002Fdevtools\u002Fpages","4.reference\u002F8.devtools\u002F3.pages","lucide:files","Jede Seite jeder Collection, mit ihrem Frontmatter und ihren Git-Metadaten.",{"title":685,"path":686,"stem":687,"icon":688,"description":689},"Versionen","\u002Freference\u002Fdevtools\u002Fversions","4.reference\u002F8.devtools\u002F4.versions","lucide:columns-3","Welche Version — und welche Sprache — trägt welche Seite.",{"title":691,"path":692,"stem":693,"icon":694,"description":695},"Prüfungen","\u002Freference\u002Fdevtools\u002Fchecks","4.reference\u002F8.devtools\u002F5.checks","lucide:check-check","Der Build-Validator, ausgeführt gegen das, was die Seite gerade ausliefert.",{"title":697,"path":698,"stem":699,"icon":86,"description":700},"Suche","\u002Freference\u002Fdevtools\u002Fsearch","4.reference\u002F8.devtools\u002F6.search","Was der Suchindex hält, durch dieselbe Abfrage, die der Dialog ausführt.",{"title":702,"path":703,"stem":704,"icon":418,"description":705},"Config","\u002Freference\u002Fdevtools\u002Fconfig","4.reference\u002F8.devtools\u002F7.config","Die zusammengeführte `duxt`-Config, und von welcher Seite der Zusammenführung jeder Wert kam.",{"title":707,"path":708,"stem":709,"icon":92,"description":710},"i18n","\u002Freference\u002Fdevtools\u002Fi18n","4.reference\u002F8.devtools\u002F8.i18n","Message-Keys pro Locale, gegen die Basissprache.",{"title":712,"path":713,"stem":714,"icon":715,"description":716},"Cache","\u002Freference\u002Fdevtools\u002Fcache","4.reference\u002F8.devtools\u002F9.cache","lucide:hard-drive","Der Download-Cache von Content und ein Weg, einen Eintrag zu verwerfen.",{"title":718,"path":719,"stem":720,"children":721,"icon":723,"description":724},"API-Referenz","\u002Freference\u002Fopenapi","4.reference\u002F9.openapi\u002Findex",[722,725,729,733,739],{"title":718,"path":719,"stem":720,"icon":723,"description":724},"lucide:plug","Ein OpenAPI-Dokument, veröffentlicht als Referenzseiten mit einem Client, der echte Anfragen sendet.",{"title":170,"path":726,"stem":727,"icon":201,"description":728},"\u002Freference\u002Fopenapi\u002Fsection","4.reference\u002F9.openapi\u002F1.section","Der Sektionstyp `openapi` — wo das Dokument liegt, und was daraus wird.",{"title":344,"path":730,"stem":731,"icon":191,"description":732},"\u002Freference\u002Fopenapi\u002Fcomponents","4.reference\u002F9.openapi\u002F2.components","Die drei MDC-Komponenten, aus denen eine generierte Referenzseite besteht.",{"title":734,"path":735,"stem":736,"icon":737,"description":738},"Der Try-it-Client","\u002Freference\u002Fopenapi\u002Ftry-it","4.reference\u002F9.openapi\u002F3.try-it","lucide:send","Eine echte Anfrage, gesendet vom Browser des Lesers.",{"title":740,"path":741,"stem":742,"icon":488,"description":743},"Request-Samples","\u002Freference\u002Fopenapi\u002Frequest-samples","4.reference\u002F9.openapi\u002F4.request-samples","Dieselbe Anfrage in zwölf Clients, und wie du eigene hinzufügst.",{"title":745,"path":746,"stem":747,"children":748,"icon":750,"description":751},"Danksagungen","\u002Fcredits","5.credits\u002Findex",[749],{"title":745,"path":746,"stem":747,"icon":750,"description":751},"lucide:heart","Worauf duxt aufbaut, und wem es nachempfunden ist.",{"title":753,"path":754,"stem":755,"children":756,"description":760},"Konventionen","\u002Fconventions","6.conventions",[757,761,767],{"title":753,"path":754,"stem":758,"icon":759,"description":760},"6.conventions\u002Findex","lucide:ruler","Projektspezifische Regeln — die, die sich aus dem Code nicht erschließen lassen.",{"title":762,"path":763,"stem":764,"icon":765,"description":766},"Branding","\u002Fconventions\u002Fbranding","6.conventions\u002F1.branding","lucide:shapes","Die Marke [d]uxt — wo welches Asset verwendet wird, warum die Klammern des Icons neu gezeichnet sind, und welche Farben feststehen.",{"title":768,"path":769,"stem":770,"icon":283,"description":771},"Icons","\u002Fconventions\u002Ficons","6.conventions\u002F2.icons","Vier Icon-Sätze, und die eine Frage, die entscheidet, welcher davon ein Zeichen malt.",{"title":773,"path":774,"stem":775,"children":776,"description":780},"Architekturentscheidungen","\u002Fadr","99.adr",[777,781,787,792,797,802,807,812,817,822],{"title":773,"path":774,"stem":778,"icon":779,"description":780},"99.adr\u002Findex","lucide:gavel","Das Entscheidungsprotokoll — jede Architekturentscheidung, die für duxt festgehalten wurde.",{"title":782,"path":783,"stem":784,"icon":785,"description":786},"duxt als Ebene bauen, die ein Modul trägt","\u002Fadr\u002F0001-build-duxt-as-a-layer-carrying-a-module","99.adr\u002F0001-build-duxt-as-a-layer-carrying-a-module",null,"Das Theme als Nuxt-Ebene ausliefern, deren Wurzel das Paket ist, statt als Starter-Vorlage.",{"title":788,"path":789,"stem":790,"icon":785,"description":791},"Die Collections aus einer Quellenliste erzeugen","\u002Fadr\u002F0002-generate-the-collections-from-one-source-list","99.adr\u002F0002-generate-the-collections-from-one-source-list","Content-Collections zur Ladezeit der Konfiguration aus einer kompakten Quellenliste berechnen, statt Konsumenten sie deklarieren zu lassen.",{"title":793,"path":794,"stem":795,"icon":785,"description":796},"Die URL-Präfixe zur Build-Zeit entscheiden","\u002Fadr\u002F0003-decide-the-url-prefixes-at-build-time","99.adr\u002F0003-decide-the-url-prefixes-at-build-time","Ob ein Repository- oder Versionssegment erscheint, entscheidet die Quellenliste vor der ersten Anfrage, nie pro Anfrage.",{"title":798,"path":799,"stem":800,"icon":785,"description":801},"Markdown-Komponenten mit MDC rendern","\u002Fadr\u002F0004-render-markdown-components-with-mdc","99.adr\u002F0004-render-markdown-components-with-mdc","Für Komponenten in Markdown Contents eigene MDC-Syntax nutzen, statt MDX einzuführen.",{"title":803,"path":804,"stem":805,"icon":785,"description":806},"Die Ebene ohne betreiberspezifische Links ausliefern","\u002Fadr\u002F0005-ship-the-layer-without-owner-specific-links","99.adr\u002F0005-ship-the-layer-without-owner-specific-links","Jeder Standard, der ein bestimmtes Projekt benennen würde — Repository, Issue-Tracker, Community, Impressum —, wird leer ausgeliefert.",{"title":808,"path":809,"stem":810,"icon":785,"description":811},"Nach Zeitplan neu bauen statt zur Laufzeit aktualisieren","\u002Fadr\u002F0006-rebuild-on-a-schedule-rather-than-refresh-at-runtime","99.adr\u002F0006-rebuild-on-a-schedule-rather-than-refresh-at-runtime","Eine Seite, die ein anderes Repository liest, übernimmt dessen Änderungen beim Bauen, und eine Aktualisierung zur Laufzeit wird nicht angeboten.",{"title":813,"path":814,"stem":815,"icon":785,"description":816},"Übersetzungen als eigene Collections ausliefern","\u002Fadr\u002F0007-serve-translations-as-collections-of-their-own","99.adr\u002F0007-serve-translations-as-collections-of-their-own","Einer Quelle eine Locale-Dimension hinzufügen statt dem Content-Pfad ein Locale-Segment.",{"title":818,"path":819,"stem":820,"icon":785,"description":821},"Das Theme auf eigenen shadcn-vue-Komponenten bauen","\u002Fadr\u002F0008-build-the-theme-on-owned-shadcn-vue-components","99.adr\u002F0008-build-the-theme-on-owned-shadcn-vue-components","Die Ebene hält den Quelltext ihrer Interface-Komponenten selbst, statt sie aus einer Komponentenbibliothek oder einem fertigen Dokumentations-Theme zu importieren.",{"title":823,"path":824,"stem":825,"icon":785,"description":826},"Den SEO-Unterbau aus dem Nuxt-SEO-Bündel nehmen","\u002Fadr\u002F0009-take-the-seo-stack-from-the-nuxt-seo-bundle","99.adr\u002F0009-take-the-seo-stack-from-the-nuxt-seo-bundle","Die Ebene installiert @nuxtjs\u002Fseo und übergibt ihm die Head-Tags und strukturierten Daten, die sie bislang von Hand schrieb — behalten werden nur die Regeln, die von Versionen und Übersetzungen abhängen.",{"title":828,"path":829,"stem":830,"icon":831,"description":832},"Dokumentation","\u002F","index","lucide:book-open-text","Eine Nuxt-Ebene, die den docs-Ordner eines Repositories in eine versionierte Dokumentationsseite über mehrere Repositories verwandelt.",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":837},0,24,false,"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Ccircle cx=\"12\" cy=\"12\" r=\"10\"\u002F>\u003Cpath d=\"m16.24 7.76l-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z\"\u002F>\u003C\u002Fg>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":839},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 5v16m8.001-2A2 2 0 0 0 22 17V5a2 2 0 0 0-1.999-2L16 3.002A5 5 0 0 0 12 5a5 5 0 0 0-4-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 1.999 2H8a5 5 0 0 1 4 2a5 5 0 0 1 4-2z\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":841},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 5h.01M3 12h.01M3 19h.01M8 5h13M8 12h13M8 19h13\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":843},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M21.3 15.3a2.4 2.4 0 0 1 0 3.4l-2.6 2.6a2.4 2.4 0 0 1-3.4 0L2.7 8.7a2.41 2.41 0 0 1 0-3.4l2.6-2.6a2.41 2.41 0 0 1 3.4 0Zm-6.8-2.8l2-2m-5-1l2-2m-5-1l2-2m7 11l2-2\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":845},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m14 13l-8.381 8.38a1 1 0 0 1-3.001-3l8.384-8.381M16 16l6-6m-.5.5l-8-8M8 8l6-6M8.5 7.5l8 8\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":847},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09\"\u002F>\u003Cpath d=\"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z\"\u002F>\u003Cpath d=\"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05\"\u002F>\u003C\u002Fg>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":849},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M12 15V3m9 12v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"\u002F>\u003Cpath d=\"m7 10l5 5l5-5\"\u002F>\u003C\u002Fg>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":851},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M9.671 4.136a2.34 2.34 0 0 1 4.659 0a2.34 2.34 0 0 0 3.319 1.915a2.34 2.34 0 0 1 2.33 4.033a2.34 2.34 0 0 0 0 3.831a2.34 2.34 0 0 1-2.33 4.033a2.34 2.34 0 0 0-3.319 1.915a2.34 2.34 0 0 1-4.659 0a2.34 2.34 0 0 0-3.32-1.915a2.34 2.34 0 0 1-2.33-4.033a2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915\"\u002F>\u003Ccircle cx=\"12\" cy=\"12\" r=\"3\"\u002F>\u003C\u002Fg>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":853},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 5h16M4 12h16M4 19h16\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":855},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m6 9l6 6l6-6\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":857},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"m21 21l-4.34-4.34\"\u002F>\u003Ccircle cx=\"11\" cy=\"11\" r=\"8\"\u002F>\u003C\u002Fg>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":859},"\u003Cpath fill=\"currentColor\" d=\"M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12\"\u002F>",{"left":834,"top":834,"width":861,"height":862,"rotate":834,"vFlip":836,"hFlip":836,"body":863},640,480,"\u003Cpath fill=\"#fc0\" d=\"M0 320h640v160H0z\"\u002F>\u003Cpath fill=\"#000001\" d=\"M0 0h640v160H0z\"\u002F>\u003Cpath fill=\"red\" d=\"M0 160h640v160H0z\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":865},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401\"\u002F>",{"page":867,"from":1300,"asked":1301},{"id":868,"title":20,"body":869,"compare":785,"contributors":1290,"date":785,"description":24,"extension":1293,"icon":23,"lastUpdated":1294,"layout":785,"meta":1295,"navigation":836,"path":21,"rawbody":1296,"redirectFrom":785,"seo":1297,"sitemap":1298,"stem":22,"__hash__":1299},"docs_de\u002F1.getting-started\u002F2.configuration.md",{"type":870,"value":871,"toc":1283},"minimark",[872,885,968,984,989,1007,1022,1026,1039,1043,1062,1066,1081,1087,1147,1150,1219,1227,1231,1240,1263,1279],[873,874,875,876,880,881,884],"p",{},"Alles, was das Theme zeigt, sind Daten, und ",[877,878,879],"code",{},"app\u002Fapp.config.ts"," ist der Ort, an\ndem eine Seite sie angibt. Es gibt keine zweite Konfigurationsdatei: derselbe\n",[877,882,883],{},"duxt","-Schlüssel trägt das Theme, die Dokumentationsquellen und die eigenen\nLinks der Seite.",[886,887,892],"pre",{"className":888,"code":889,"filename":879,"language":890,"meta":891,"style":891},"language-ts shiki shiki-themes github-light github-dark","export default defineAppConfig({\n  duxt: {\n    title: 'mein Projekt',\n    version: 'v1.4.0',\n    sources: [{ path: 'docs' }]\n  }\n});\n","ts","",[877,893,894,914,920,933,944,956,962],{"__ignoreMap":891},[895,896,899,903,906,910],"span",{"class":897,"line":898},"line",1,[895,900,902],{"class":901},"szBVR","export",[895,904,905],{"class":901}," default",[895,907,909],{"class":908},"sScJk"," defineAppConfig",[895,911,913],{"class":912},"sVt8B","({\n",[895,915,917],{"class":897,"line":916},2,[895,918,919],{"class":912},"  duxt: {\n",[895,921,923,926,930],{"class":897,"line":922},3,[895,924,925],{"class":912},"    title: ",[895,927,929],{"class":928},"sZZnC","'mein Projekt'",[895,931,932],{"class":912},",\n",[895,934,936,939,942],{"class":897,"line":935},4,[895,937,938],{"class":912},"    version: ",[895,940,941],{"class":928},"'v1.4.0'",[895,943,932],{"class":912},[895,945,947,950,953],{"class":897,"line":946},5,[895,948,949],{"class":912},"    sources: [{ path: ",[895,951,952],{"class":928},"'docs'",[895,954,955],{"class":912}," }]\n",[895,957,959],{"class":897,"line":958},6,[895,960,961],{"class":912},"  }\n",[895,963,965],{"class":897,"line":964},7,[895,966,967],{"class":912},"});\n",[873,969,970,971,975,976,979,980,983],{},"Jeder Schlüssel und sein Standardwert stehen in der\n",[972,973,974],"a",{"href":158},"Konfigurationsreferenz","; der Eintrag ",[877,977,978],{},"sources"," hat\n",[972,981,982],{"href":194},"eine eigene Seite",".",[985,986,988],"h2",{"id":987},"wie-deine-konfiguration-zusammengeführt-wird","Wie deine Konfiguration zusammengeführt wird",[873,990,991,992,994,995,999,1000,1003,1004,1006],{},"Dein ",[877,993,883],{},"-Objekt wird schlüsselweise über die Standardwerte der Ebene gelegt,\nund ",[996,997,998],"strong",{},"ein Array von dir ersetzt das der Ebene",", statt daran angehängt zu\nwerden. Das ist wichtig, weil Nuxts eigene ",[877,1001,1002],{},"app.config","-Zusammenführung das\nGegenteil tut: Sie verkettet Arrays, womit du einen einzelnen Navbar-Eintrag der\nEbene nicht mehr entfernen könntest. Deshalb liefert die Ebene in ",[877,1005,1002],{},"\nüberhaupt keine Listen aus und führt sie selbst zusammen.",[873,1008,1009,1010,1013,1014,1017,1018,1021],{},"Die praktische Regel: Überschreibe ",[877,1011,1012],{},"footer.copyright",", und ",[877,1015,1016],{},"footer.legal"," bleibt\nunangetastet; deklariere ",[877,1019,1020],{},"navigation",", und der eine Eintrag der Ebene ist\nweg.",[985,1023,1025],{"id":1024},"zwei-schlüssel-werden-zur-build-zeit-gelesen","Zwei Schlüssel werden zur Build-Zeit gelesen",[873,1027,1028,1030,1031,1034,1035,1038],{},[877,1029,978],{}," und ",[877,1032,1033],{},"locales"," entscheiden über die Collections, die Routen und die\n",[877,1036,1037],{},"hreflang","-Links, und alle drei stehen vor der ersten Anfrage fest. Eines von\nbeiden zu ändern erfordert einen erneuten Build; alles andere wirkt, sobald die\nKonfiguration neu geladen ist.",[985,1040,1042],{"id":1041},"manche-schlüssel-werden-erzeugt-nicht-geschrieben","Manche Schlüssel werden erzeugt, nicht geschrieben",[873,1044,1045,1048,1049,1030,1052,1055,1056,1058,1059,1061],{},[877,1046,1047],{},"resolvedSources",", ",[877,1050,1051],{},"layerVersion",[877,1053,1054],{},"layerRepository"," erscheinen zur Laufzeit\nin der Konfiguration und gehören dem Build. ",[877,1057,1047],{}," ist das Manifest,\ndas das Theme tatsächlich liest — welche Collection welches URL-Präfix bedient —\naufgelöst aus der ",[877,1060,978],{},"-Liste, die du geschrieben hast. Schreibst du eines\nder drei von Hand, wird es überschrieben.",[985,1063,1065],{"id":1064},"was-die-ebene-nicht-zu-wissen-vorgibt","Was die Ebene nicht zu wissen vorgibt",[873,1067,1068,1048,1071,1030,1074,1076,1077,1080],{},[877,1069,1070],{},"links",[877,1072,1073],{},"aside.links",[877,1075,1016],{}," werden ",[996,1078,1079],{},"leer"," ausgeliefert. Ein\nRepository, ein Issue-Tracker, eine Community und ein Impressum benennen jeweils\nein bestimmtes Projekt — ein Standardwert mit duxts eigenen Angaben würde deinen\nLesern ein „Star on GitHub“ hinstellen, das fremde Arbeit mit einem Stern\nversieht.",[873,1082,1083,1086],{},[877,1084,1085],{},"sections"," ist aus dem benachbarten Grund leer: Es benennt die obersten Teile\ndeines Dokumentationsbaums, und die Ebene kann nicht wissen, wie du sie genannt\nhast. Setze es, sobald deine Doku Sektionen hat; bis dahin bleibt die Zeile\nverborgen und die Seitenleiste zeigt den ganzen Baum.",[886,1088,1090],{"className":888,"code":1089,"language":890,"meta":891,"style":891},"sections: [\n  { label: 'Anleitungen', to: '\u002Fguides', icon: 'lucide:book-open' },\n  { label: 'Referenz', to: '\u002Freference', icon: 'lucide:list' }\n]\n",[877,1091,1092,1099,1122,1142],{"__ignoreMap":891},[895,1093,1094,1096],{"class":897,"line":898},[895,1095,1085],{"class":908},[895,1097,1098],{"class":912},": [\n",[895,1100,1101,1104,1107,1110,1113,1116,1119],{"class":897,"line":916},[895,1102,1103],{"class":912},"  { label: ",[895,1105,1106],{"class":928},"'Anleitungen'",[895,1108,1109],{"class":912},", to: ",[895,1111,1112],{"class":928},"'\u002Fguides'",[895,1114,1115],{"class":912},", icon: ",[895,1117,1118],{"class":928},"'lucide:book-open'",[895,1120,1121],{"class":912}," },\n",[895,1123,1124,1126,1129,1131,1134,1136,1139],{"class":897,"line":922},[895,1125,1103],{"class":912},[895,1127,1128],{"class":928},"'Referenz'",[895,1130,1109],{"class":912},[895,1132,1133],{"class":928},"'\u002Freference'",[895,1135,1115],{"class":912},[895,1137,1138],{"class":928},"'lucide:list'",[895,1140,1141],{"class":912}," }\n",[895,1143,1144],{"class":897,"line":935},[895,1145,1146],{"class":912},"]\n",[873,1148,1149],{},"Schreibe deine eigenen — als einfache Zeichenkette oder als Datensatz je Locale,\nwenn die Seite mehrere Sprachen bedient:",[886,1151,1153],{"className":888,"code":1152,"language":890,"meta":891,"style":891},"links: [\n  {\n    icon: 'simple-icons:github',\n    to: 'https:\u002F\u002Fgithub.com\u002Fdu\u002Fdein-projekt',\n    label: { 'en-GB': 'Repository', 'de-DE': 'Repository' }\n  }\n]\n",[877,1154,1155,1161,1166,1176,1186,1211,1215],{"__ignoreMap":891},[895,1156,1157,1159],{"class":897,"line":898},[895,1158,1070],{"class":908},[895,1160,1098],{"class":912},[895,1162,1163],{"class":897,"line":916},[895,1164,1165],{"class":912},"  {\n",[895,1167,1168,1171,1174],{"class":897,"line":922},[895,1169,1170],{"class":912},"    icon: ",[895,1172,1173],{"class":928},"'simple-icons:github'",[895,1175,932],{"class":912},[895,1177,1178,1181,1184],{"class":897,"line":935},[895,1179,1180],{"class":912},"    to: ",[895,1182,1183],{"class":928},"'https:\u002F\u002Fgithub.com\u002Fdu\u002Fdein-projekt'",[895,1185,932],{"class":912},[895,1187,1188,1191,1194,1197,1200,1202,1205,1207,1209],{"class":897,"line":946},[895,1189,1190],{"class":912},"    label: { ",[895,1192,1193],{"class":928},"'en-GB'",[895,1195,1196],{"class":912},": ",[895,1198,1199],{"class":928},"'Repository'",[895,1201,1048],{"class":912},[895,1203,1204],{"class":928},"'de-DE'",[895,1206,1196],{"class":912},[895,1208,1199],{"class":928},[895,1210,1141],{"class":912},[895,1212,1213],{"class":897,"line":958},[895,1214,961],{"class":912},[895,1216,1217],{"class":897,"line":964},[895,1218,1146],{"class":912},[1220,1221,1224],"callout",{"title":1222,"type":1223},"duxt.defaults.* gehört nicht dir","warning",[873,1225,1226],{},"Die i18n-Schlüssel der Ebene übersetzen die Standardwerte, die sie ausliefert.\nSie sind intern: einen davon umzubenennen ist keine brechende Änderung, und i18n\nbeantwortet einen fehlenden Schlüssel damit, den Schlüssel auszugeben — der\nBruch wäre auf deiner Seite also lautlos. Nimm ein Literal, einen eigenen\nSchlüssel oder die Datensatzform oben.",[985,1228,1230],{"id":1229},"der-ursprung-der-seite","Der Ursprung der Seite",[873,1232,1233,1234,1048,1236,1239],{},"duxt kann die Domain nicht erraten, unter der es ausgeliefert wird, und vier\nDinge brauchen sie: ",[877,1235,1037],{},[877,1237,1238],{},"canonical",", die Sitemap und die\nOpen-Graph-Bilder. Gib sie einmal an, dort, wo Nuxt ohnehin danach fragt:",[886,1241,1244],{"className":888,"code":1242,"filename":1243,"language":890,"meta":891,"style":891},"i18n: { baseUrl: 'https:\u002F\u002Fdocs.example.com' }\n","nuxt.config.ts",[877,1245,1246],{"__ignoreMap":891},[895,1247,1248,1250,1253,1256,1258,1261],{"class":897,"line":898},[895,1249,707],{"class":908},[895,1251,1252],{"class":912},": { ",[895,1254,1255],{"class":908},"baseUrl",[895,1257,1196],{"class":912},[895,1259,1260],{"class":928},"'https:\u002F\u002Fdocs.example.com'",[895,1262,1141],{"class":912},[873,1264,1265,1266,1269,1270,1273,1274,1276,1277,983],{},"oder als ",[877,1267,1268],{},"NUXT_PUBLIC_I18N_BASE_URL"," im Deployment. Die Ebene kopiert sie nach\n",[877,1271,1272],{},"site.url",", wo die SEO-Module nachsehen. Bleibt sie ungesetzt, fällt jedes von\nihnen auf relative Ausgabe zurück, statt eine Domain zu erfinden — ein relatives\n",[877,1275,1238],{}," löst immer noch auf, ein geratenes ist aktiv falsch. Siehe\n",[972,1278,83],{"href":84},[1280,1281,1282],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":891,"searchDepth":916,"depth":916,"links":1284},[1285,1286,1287,1288,1289],{"id":987,"depth":916,"text":988},{"id":1024,"depth":916,"text":1025},{"id":1041,"depth":916,"text":1042},{"id":1064,"depth":916,"text":1065},{"id":1229,"depth":916,"text":1230},[1291],{"name":1292,"commits":935},"Titus Kirch","md","2026-09-09T13:06:19+02:00",{},"---\ntitle: Konfiguration\ndescription: Eine Datei konfiguriert die ganze Seite — was hineingehört, und wie sie zusammengeführt wird.\nicon: lucide:settings\n---\n\nAlles, was das Theme zeigt, sind Daten, und `app\u002Fapp.config.ts` ist der Ort, an\ndem eine Seite sie angibt. Es gibt keine zweite Konfigurationsdatei: derselbe\n`duxt`-Schlüssel trägt das Theme, die Dokumentationsquellen und die eigenen\nLinks der Seite.\n\n```ts [app\u002Fapp.config.ts]\nexport default defineAppConfig({\n  duxt: {\n    title: 'mein Projekt',\n    version: 'v1.4.0',\n    sources: [{ path: 'docs' }]\n  }\n});\n```\n\nJeder Schlüssel und sein Standardwert stehen in der\n[Konfigurationsreferenz](\u002Freference\u002Fconfiguration); der Eintrag `sources` hat\n[eine eigene Seite](\u002Freference\u002Fsources).\n\n## Wie deine Konfiguration zusammengeführt wird\n\nDein `duxt`-Objekt wird schlüsselweise über die Standardwerte der Ebene gelegt,\nund **ein Array von dir ersetzt das der Ebene**, statt daran angehängt zu\nwerden. Das ist wichtig, weil Nuxts eigene `app.config`-Zusammenführung das\nGegenteil tut: Sie verkettet Arrays, womit du einen einzelnen Navbar-Eintrag der\nEbene nicht mehr entfernen könntest. Deshalb liefert die Ebene in `app.config`\nüberhaupt keine Listen aus und führt sie selbst zusammen.\n\nDie praktische Regel: Überschreibe `footer.copyright`, und `footer.legal` bleibt\nunangetastet; deklariere `navigation`, und der eine Eintrag der Ebene ist\nweg.\n\n## Zwei Schlüssel werden zur Build-Zeit gelesen\n\n`sources` und `locales` entscheiden über die Collections, die Routen und die\n`hreflang`-Links, und alle drei stehen vor der ersten Anfrage fest. Eines von\nbeiden zu ändern erfordert einen erneuten Build; alles andere wirkt, sobald die\nKonfiguration neu geladen ist.\n\n## Manche Schlüssel werden erzeugt, nicht geschrieben\n\n`resolvedSources`, `layerVersion` und `layerRepository` erscheinen zur Laufzeit\nin der Konfiguration und gehören dem Build. `resolvedSources` ist das Manifest,\ndas das Theme tatsächlich liest — welche Collection welches URL-Präfix bedient —\naufgelöst aus der `sources`-Liste, die du geschrieben hast. Schreibst du eines\nder drei von Hand, wird es überschrieben.\n\n## Was die Ebene nicht zu wissen vorgibt\n\n`links`, `aside.links` und `footer.legal` werden **leer** ausgeliefert. Ein\nRepository, ein Issue-Tracker, eine Community und ein Impressum benennen jeweils\nein bestimmtes Projekt — ein Standardwert mit duxts eigenen Angaben würde deinen\nLesern ein „Star on GitHub“ hinstellen, das fremde Arbeit mit einem Stern\nversieht.\n\n`sections` ist aus dem benachbarten Grund leer: Es benennt die obersten Teile\ndeines Dokumentationsbaums, und die Ebene kann nicht wissen, wie du sie genannt\nhast. Setze es, sobald deine Doku Sektionen hat; bis dahin bleibt die Zeile\nverborgen und die Seitenleiste zeigt den ganzen Baum.\n\n```ts\nsections: [\n  { label: 'Anleitungen', to: '\u002Fguides', icon: 'lucide:book-open' },\n  { label: 'Referenz', to: '\u002Freference', icon: 'lucide:list' }\n]\n```\n\nSchreibe deine eigenen — als einfache Zeichenkette oder als Datensatz je Locale,\nwenn die Seite mehrere Sprachen bedient:\n\n```ts\nlinks: [\n  {\n    icon: 'simple-icons:github',\n    to: 'https:\u002F\u002Fgithub.com\u002Fdu\u002Fdein-projekt',\n    label: { 'en-GB': 'Repository', 'de-DE': 'Repository' }\n  }\n]\n```\n\n::callout{type=\"warning\" title=\"duxt.defaults.* gehört nicht dir\"}\nDie i18n-Schlüssel der Ebene übersetzen die Standardwerte, die sie ausliefert.\nSie sind intern: einen davon umzubenennen ist keine brechende Änderung, und i18n\nbeantwortet einen fehlenden Schlüssel damit, den Schlüssel auszugeben — der\nBruch wäre auf deiner Seite also lautlos. Nimm ein Literal, einen eigenen\nSchlüssel oder die Datensatzform oben.\n::\n\n## Der Ursprung der Seite\n\nduxt kann die Domain nicht erraten, unter der es ausgeliefert wird, und vier\nDinge brauchen sie: `hreflang`, `canonical`, die Sitemap und die\nOpen-Graph-Bilder. Gib sie einmal an, dort, wo Nuxt ohnehin danach fragt:\n\n```ts [nuxt.config.ts]\ni18n: { baseUrl: 'https:\u002F\u002Fdocs.example.com' }\n```\n\noder als `NUXT_PUBLIC_I18N_BASE_URL` im Deployment. Die Ebene kopiert sie nach\n`site.url`, wo die SEO-Module nachsehen. Bleibt sie ungesetzt, fällt jedes von\nihnen auf relative Ausgabe zurück, statt eine Domain zu erfinden — ein relatives\n`canonical` löst immer noch auf, ein geratenes ist aktiv falsch. Siehe\n[SEO](\u002Fconcepts\u002Fseo).\n",{"title":20,"description":24},{"loc":21},"lSVjfX0rklWEA41m2Y0h9TFb7g2_zY90jN4cPKZ3y5Y","de","de-DE",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1303},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Crect width=\"14\" height=\"14\" x=\"8\" y=\"8\" rx=\"2\" ry=\"2\"\u002F>\u003Cpath d=\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\"\u002F>\u003C\u002Fg>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1305},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M15 5.88L14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88M7 10v12\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1307},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 18.12L10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88M17 14V2\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1309},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.12 2.12 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.12 2.12 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.12 2.12 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.12 2.12 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.12 2.12 0 0 0 1.597-1.16z\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1311},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Ccircle cx=\"12\" cy=\"12\" r=\"10\"\u002F>\u003Cpath d=\"M12 8v4m0 4h.01\"\u002F>\u003C\u002Fg>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1313},"\u003Cpath fill=\"currentColor\" d=\"M20.317 4.37a19.8 19.8 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.3 18.3 0 0 0-5.487 0a13 13 0 0 0-.617-1.25a.08.08 0 0 0-.079-.037A19.7 19.7 0 0 0 3.677 4.37a.1.1 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.08.08 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.08.08 0 0 0 .084-.028a14 14 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13 13 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10 10 0 0 0 .372-.292a.07.07 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.07.07 0 0 1 .078.01q.181.149.373.292a.077.077 0 0 1-.006.127a12.3 12.3 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.08.08 0 0 0 .084.028a19.8 19.8 0 0 0 6.002-3.03a.08.08 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.06.06 0 0 0-.031-.03M8.02 15.33c-1.182 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418m7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1315},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 5v16m4-8h2m-2-4h2m2.001 10A2 2 0 0 0 22 17V5a2 2 0 0 0-1.999-2L16 3.002A5 5 0 0 0 12 5a5 5 0 0 0-4-2H4a2 2 0 0 0-2 2v12a2 2 0 0 0 1.999 2H8a5 5 0 0 1 4 2a5 5 0 0 1 4-2zM6 13h2M6 9h2\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1317},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M7 7h10v10M7 17L17 7\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1319},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497zM15 5l4 4\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1321},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m21.73 18l-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4m0 4h.01\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1323},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m12 19l-7-7l7-7m7 7H5\"\u002F>",{"left":834,"top":834,"width":835,"height":835,"rotate":834,"vFlip":836,"hFlip":836,"body":1325},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m9 18l6-6l-6-6\"\u002F>",1789004674397]