Aller au contenu principal

CLI

docStatic fournit un ensemble de scripts destinés à vous aider à générer, mettre à disposition et déployer votre site web. Ceux-ci sont définis dans la section scripts du fichier package.json de votre site, qui fait office de liste de référence — exécutez la commande npm run sans argument pour afficher la liste des scripts dont dispose réellement votre site.

Les commandes ci-dessous sont regroupées par fonction.

Commandes de la CLI docStatic

Pour exécuter ces commandes, utilisez npm ou yarn. Par exemple, npm run dev ou yarn dev.

Principaux scripts docStatic :

  • `dev` : Démarre le serveur de développement avec l’intégration TinaCMS
  • `build` : Génère la version de production (lance la compilation TinaCMS puis celle de Docusaurus)
  • `build-local` : Génère localement sans les fonctionnalités cloud
  • `check-links` : Interroge chaque lien externe de vos rubriques et enregistre le statut HTTP renvoyé par chaque serveur, afin que le tableau de bord des liens rompus puisse signaler les véritables erreurs 404 et 500. Ajoutez --strict pour que le script s’arrête avec une erreur lorsque des liens rompus sont détectés, ce qui est souhaitable dans un job d’intégration continue. Voir Tableaux de bord.
  • `generate` : Exécute tous les générateurs ci-dessous en une seule fois. Les commandes prebuild et predev l’appellent, vous n’aurez donc que rarement besoin de l’utiliser directement.
  • `generate-media-index` : Génère un index des fichiers multimédias
  • `generate-git-identity` : Génère les informations d’identité Git
  • `generate-files` : Génère les listes de fichiers pour l’application
  • `generate-docs-metadata` : Génère l’index de métadonnées utilisé par les tableaux de bord et la recherche
  • `generate-link-report` : Reconstruit l’inventaire des liens sans effectuer de requêtes réseau. Les résultats de la dernière exécution de check-links sont conservés ; une compilation ne les supprime donc jamais.
  • `update-theme-css` : Met à jour les fichiers CSS du thème
  • `lint` / `lint:fix` : Vérifie, et corrige si nécessaire, le formatage et la qualité du code
  • `mcp:install` : Installe les dépendances du serveur Model Context Protocol
  • `mcp:build` : Compile le serveur MCP à partir de TypeScript
  • `mcp:dev` : Démarre le serveur MCP en mode développement avec redémarrage automatique
  • `mcp:start` : Démarre le serveur MCP compilé pour l’intégration d’un assistant IA
  • `mcp:test` : Exécute les tests de connectivité du serveur MCP

Pour plus d’informations sur le serveur MCP, consultez la section Intégration du serveur MCP.

Ces commandes s’appuient sur les commandes Docusaurus standard décrites dans la section CLI de la documentation Docusaurus :

  • docusaurus
  • start
  • build
  • swizzle
  • deploy
  • clear
  • serve
  • write-translations
  • write-heading-ids

Commandes automatisées

Ces commandes s’exécutent automatiquement ; vous n’avez donc normalement pas besoin de les lancer vous-même :

  • prebuild, predev et prebuild-local exécutent chacune la commande generate avant le début d’une compilation ou le démarrage du serveur de développement, ce qui actualise l’index des médias, les listes de fichiers, les métadonnées de la documentation, l’inventaire des liens, le CSS du thème et l’identité Git.
  • prestart actualise l’inventaire des liens avant start, ce qui permet au tableau de bord des liens rompus d’afficher un rapport même si vous n’avez jamais exécuté check-links.
  • postinstall installe les dépendances du serveur MCP.

Commandes API

  • clean-api-docs
  • gen-api-docs
  • gen-graphql

Pour plus d’informations sur les commandes OpenAPI, consultez la section Utilisation de la CLI dans la documentation du plugin Docusaurus OpenAPI.

Pour plus d’informations sur la commande GraphQL, consultez la section Utilisation dans la documentation du plugin Docusaurus GraphQL.

Commandes de création et de mise à jour du site

Ces commandes proviennent du paquet create-docstatic plutôt que du fichier package.json ; elles fonctionnent donc partout — vous n’avez pas besoin d’un site docStatic pour les exécuter.

  • `npx create-docstatic@latest <nom-du-projet>` : crée un nouveau site docStatic. Consultez la section Installation pour plus de détails.
  • `npx create-docstatic@latest --update` : Mettez à jour un site existant vers la dernière version de docStatic. Exécutez cette commande depuis le dossier racine d’un site créé avec create-docstatic. Elle met à jour les fichiers appartenant à docStatic ainsi que les versions des dépendances, sans modifier votre contenu.

La commande de mise à jour accepte les options suivantes :

  • `--dry-run` : affiche les modifications qui seraient effectuées sans rien enregistrer.
  • `--force` : continue même si l’arborescence de travail Git n’est pas propre. Sans cette option, la commande vous demande d’abord de valider ou de mettre en attente vos modifications afin que vous puissiez vérifier la mise à jour avec git diff.
  • `--tag <dist-tag>` : effectue la mise à jour vers une version spécifique du paquet docstatic ou une balise de distribution (dist-tag) au lieu de latest.
  • `--no-install` : ignore l’installation des dépendances après la mise à jour.

Commandes de synchronisation des modèles

Ces commandes n’existent que dans le dépôt docStatic lui-même (et ses forks) — et non dans les sites créés avec create-docstatic. Elles permettent de synchroniser le modèle de structure situé dans le dossier template/ avec le site principal.

Le modèle est ce que npx create-docstatic@latest fournit aux nouveaux sites ; ainsi, chaque fois que vous modifiez du code que le modèle partage avec le site principal — composants React dans src/, scripts de compilation dans scripts/, tina/config.jsx, docusaurus.config.ts ou sidebars.ts —, le modèle doit subir la même modification.

  • `sync-template` : Copie le code partagé du site principal dans template/, aligne les dépendances et les scripts de package.json du modèle, puis régénère update-manifest.json (le fichier utilisé par npx create-docstatic@latest --update pour mettre à jour les sites existants). Le contenu du modèle, tel que la documentation de démarrage et les valeurs de configuration, reste inchangé.
  • `sync-template:check` : signale les modifications qui seraient apportées sans rien écrire, et se termine par une erreur si le modèle a dérivé. Le hook pre-commit exécute cette vérification ; ainsi, une validation échoue avec le message « template out of sync » jusqu’à ce que vous exécutiez yarn sync-template et que vous placiez le résultat en attente de validation.

Déroulement type après la modification d’un fichier partagé :

yarn sync-template
git add template/ update-manifest.json
git commit

Commandes de linting

Pour plus d’informations sur les commandes de linting, consultez la section CLI de la documentation Biome.