## Ajouter la dépendance

:partial{name="install"}

## Étendre la couche

```ts [nuxt.config.ts]
export default defineNuxtConfig({
  extends: ['@kirchdev/duxt']
});
```

## Écrire votre documentation

Le Markdown se place dans `docs/`, à la racine de votre dépôt — résolu par
rapport au dépôt et non au répertoire d’exécution du site, afin qu’un site situé
dans un sous-dossier le trouve. Un fichier devient une page, un dossier une
section, et le frontmatter porte le titre, la description et l’icône.

::file-tree{title="votre-projet/"}
---
tree:
  - name: docs/
    children:
      - name: index.md
      - name: 1.getting-started/
        children:
          - name: index.md
          - name: 1.installation.md
      - name: 2.guides/
        children:
          - name: 1.deploying.md
  - name: nuxt.config.ts
---
::

```md [docs/1.getting-started/index.md]
---
title: Introduction
description: Ce qu’est ce projet.
icon: lucide:rocket
---

Votre première page.
```

Un préfixe numérique ordonne l’arborescence et disparaît de l’URL :
`1.getting-started/` est servi sur `/getting-started`. Réordonner une section ne
déplace donc jamais une URL — seul le renommage de la partie après le point le
fait.

::callout{type="tip" title="Pas de H1 dans le corps"}
Le `title` de la page est rendu comme `<h1>`. Un titre à vous en début de
fichier serait le deuxième de la page.
::

## Ce dont la compilation a besoin

- **Node 24.15+.** La couche lit sa base de données via `node:sqlite` ; aucun pilote
  SQLite natif n’est installé ni nécessaire.
- **Un accès réseau à vos sources**, si certaines sont d’autres dépôts, et un
  jeton pour les dépôts privés — Content le lit dans l’`auth` de la collection.

## Ce qui vient avec

Le paquet livre une commande, `duxt`, et étendre la couche suffit à en
disposer :

```bash
pnpm exec duxt report            # ce que vos sources sont devenues, en Markdown
pnpm exec duxt report --json     # les mêmes données, non rendues
pnpm exec duxt report --help     # ce qu'il accepte et ce qu'il renvoie
```

Elle affiche les collections résolues, tout ce que la compilation vérifie et les
redirections que déclarent les pages — aucun serveur de développement, elle
s’exécute donc en CI et dans un pipe. Voir
[Ce que la compilation vérifie](/concepts/build-checks).

## Résultat

`nuxt dev` sert le site. Tout ce que le thème dessine est une donnée avec une
valeur par défaut ; l’étape suivante est donc le seul fichier qui la remplace :
[Configuration](/getting-started/configuration).