Le fichier docs.json vous permet de transformer une collection de fichiers Markdown en un site de documentation navigable et personnalisé. Ce fichier de configuration obligatoire contrôle le style, la navigation, les intégrations, et plus encore. Pensez-y comme au plan de votre documentation. Les paramètres de docs.json s’appliquent globalement à toutes les pages.

Configuration de votre docs.json

Pour commencer, vous n’avez besoin d’indiquer que theme, name, colors.primary et navigation. Les autres champs sont facultatifs et vous pourrez les ajouter au fur et à mesure que vos besoins en documentation évoluent. Pour une meilleure expérience d’édition, incluez la référence de schéma en haut de votre fichier docs.json. Cela active l’autocomplétion, la validation et des info-bulles utiles dans la plupart des éditeurs de code :
{
  "$schema": "https://mintlify.com/docs.json",
  "theme": "mint",
  "name": "Your Docs",
  "colors": {
    "primary": "#ff0000"
  },
  "navigation": {
    // La structure de votre navigation
  }
  // Le reste de votre configuration
}

Référence

Cette section présente la référence complète du fichier docs.json.

Personnalisation

theme
required
Le thème de mise en page de votre site.L’un des suivants : mint, maple, palm, willow, linden, almond, aspen.Voir Thèmes pour plus d’informations.
name
string
required
Le nom de votre projet, de votre organisation ou de votre produit.
colors
object
required
Les couleurs utilisées dans votre documentation. Leur application varie selon les thèmes. Si vous ne fournissez qu’une couleur principale, elle sera utilisée pour tous les éléments de couleur.
description
string
Description de votre site pour le SEO et l’indexation par l’IA.
Votre logo pour les modes clair et sombre.
favicon
string or object
Chemin vers votre fichier favicon, y compris l’extension. Redimensionné automatiquement aux tailles appropriées. Peut être un fichier unique ou des fichiers distincts pour les modes clair et sombre. Exemple : /favicon.png
thumbnails
object
Personnalisation des vignettes pour les réseaux sociaux et les aperçus de page.
styling
object
Paramètres de style visuel.
icons
object
Paramètres de la bibliothèque d’icônes.
fonts
object
Configuration des polices pour votre documentation. La police par défaut est Inter.
appearance
object
Paramètres de l’interrupteur de mode clair/sombre.
background
object
Paramètres de couleur et de décoration de l’arrière-plan.

Structure

navbar
object
Éléments de la barre de navigation.
navigation
object
required
La structure de navigation de votre contenu.
interaction
object
Paramètres d’interaction utilisateur pour les éléments de navigation.
Contenu du pied de page et liens vers les réseaux sociaux.
banner
object
Bandeau global affiché en haut des pages.
redirects
array of object
Redirections pour les pages déplacées, renommées ou supprimées.
contextual
object
Menu contextuel pour du contenu et des intégrations optimisés par l’IA.

Configurations de l’API

api
object
Paramètres de la documentation de l’API et du bac à sable interactif.
seo
object
Paramètres d’indexation SEO.
Paramètres d’affichage de la recherche.

Intégrations

integrations
object
Intégrations de tiers.

Erreurs

errors
object
Paramètres de gestion des erreurs.

Exemples

docs.json
{
  "$schema": "https://mintlify.com/docs.json",
  "theme": "maple",
  "name": "Example Co.",
  "description": "Example Co. est une entreprise qui fournit du contenu d'exemple et du texte de remplissage.",
  "colors": {
    "primary": "#3B82F6",
    "light": "#F8FAFC",
    "dark": "#0F172A"
  },
  "navigation": {
    "dropdowns": [
      {
        "dropdown": "Documentation",
        "icon": "book",
        "description": "Comment utiliser le produit Example Co.",
        "groups": [
          {
            "group": "Prise en main",
            "pages": [
              "index",
              "quickstart"
            ]
          },
          {
            "group": "Personnalisation",
            "pages": [
              "settings",
              "users",
              "features"
            ]
          },
          {
            "group": "Facturation",
            "pages": [
              "billing/overview",
              "billing/payments",
              "billing/subscriptions"
            ]
          }
        ]
      },
      {
        "dropdown": "Journal des modifications",
        "icon": "history",
        "description": "Mises à jour et changements",
        "pages": [
          "changelog"
        ]
      }
    ]
  },
  "logo": {
    "light": "/logo-light.svg",
    "dark": "/logo-dark.svg",
    "href": "https://example.com"
  },
  "navbar": {
    "links": [
      {
        "label": "Communauté",
        "href": "https://example.com/community"
      }
    ],
    "primary": {
      "type": "button",
      "label": "Commencer",
      "href": "https://example.com/start"
    }
  },
  "footer": {
    "socials": {
      "x": "https://x.com/example",
      "linkedin": "https://www.linkedin.com/company/example",
      "github": "https://github.com/example",
      "slack": "https://example.com/community"
    },
    "links": [
      {
        "header": "Ressources",
        "items": [
          {
            "label": "Clients",
            "href": "https://example.com/customers"
          },
          {
            "label": "Offre Entreprise",
            "href": "https://example.com/enterprise"
          },
          {
            "label": "Demander un aperçu",
            "href": "https://example.com/preview"
          }
        ]
      },
      {
        "header": "Entreprise",
        "items": [
          {
            "label": "Carrières",
            "href": "https://example.com/careers"
          },
          {
            "label": "Blog",
            "href": "https://example.com/blog"
          },
          {
            "label": "Politique de confidentialité",
            "href": "https://example.com/legal/privacy"
          }
        ]
      }
    ]
  },
  "integrations": {
    "ga4": {
      "measurementId": "G-XXXXXXXXXX"
    },
    "koala": {
      "publicApiKey": "pk_example_key_123"
    },
    "telemetry": {
      "enabled": true
    },
    "cookies": {
      "key": "example_cookie_key",
      "value": "example_cookie_value"
    }
  },
  "contextual": {
    "options": [
      "copy",
      "view",
      "chatgpt",
      "claude"
    ]
  },
  "errors": {
    "404": {
      "redirect": false,
      "title": "Introuvable",
      "description": "Qu'est-il **arrivé** à cette _page_ ?"
    }
  }
}

Mise à niveau depuis mint.json

Si votre projet de documentation utilise le fichier mint.json désormais déprécié, suivez ces étapes pour passer à docs.json.
1

Installer ou mettre à jour la CLI

Si vous n’avez pas installé la CLI, installez-la maintenant :
npm i -g mint
Si la CLI est déjà installée, assurez-vous qu’elle est à jour :
mint update
2

Créer votre fichier docs.json

Dans votre dépôt de documentation, exécutez :
mint upgrade
Cette commande créera un fichier docs.json à partir de votre mint.json existant. Passez en revue le fichier généré pour vérifier que tous les paramètres sont corrects.
3

Supprimer votre fichier mint.json

Après avoir confirmé que votre docs.json est correctement configuré, vous pouvez supprimer en toute sécurité votre ancien fichier mint.json.