Aller au contenu principal
Version : 3.7.0

Installation

Docusaurus se compose d'un ensemble de paquets npm.

astuce

Utilisez la ProcĂ©dure accĂ©lĂ©rĂ©e pour comprendre Docusaurus 5 minutes ⏱ !

Utilisez docusaurus.new pour tester immĂ©diatement Docusaurus dans votre navigateur !

PrĂ©-requis​

  • Node.js version 18.0 ou supĂ©rieure (qui peut ĂȘtre vĂ©rifiĂ©e en exĂ©cutant node -v). Vous pouvez utiliser nvm pour gĂ©rer plusieurs versions de Node sur une seule machine installĂ©e.
    • Lors de l'installation de Node.js, il est recommandĂ© de cocher toutes les cases liĂ©es aux dĂ©pendances.

Structurer un site web d'un projet​

The easiest way to install Docusaurus is to use the create-docusaurus command line tool that helps you scaffold a skeleton Docusaurus website. Vous pouvez exĂ©cuter cette commande n'importe oĂč dans un nouveau dĂ©pĂŽt vide ou dans un dĂ©pĂŽt existant, elle crĂ©era un nouveau rĂ©pertoire contenant les fichiers de structure.

npx create-docusaurus@latest my-website classic

Nous recommandons le template classic pour que vous puissiez commencer rapidement et il contient des fonctionnalitĂ©s disponibles dans Docusaurus 1. Le template classic contient @docusaurus/preset-classic qui inclut une documentation standard, un blog, des pages personnalisĂ©es et un framework CSS (avec support du mode sombre). Vous pouvez ĂȘtre opĂ©rationnel trĂšs rapidement avec le template classic et personnaliser les choses plus tard, lorsque vous serez plus familier avec Docusaurus.

Vous pouvez Ă©galement utiliser la variante TypeScript du template en passant l'option --typescript. Consultez Support de TypeScript pour plus d'informations.

npx create-docusaurus@latest my-website classic --typescript
MĂ©ta uniquement

Si vous mettez en place un nouveau site web Docusaurus pour un projet Meta open source, exĂ©cutez cette commande Ă  l'intĂ©rieur d'un dĂ©pĂŽt interne, qui est livrĂ© avec des valeurs par dĂ©faut utiles aux spĂ©cificitĂ©s de Meta :

scarf static-docs-bootstrap
Commandes d'installation alternatives

Vous pouvez Ă©galement initialiser un nouveau projet en utilisant votre gestionnaire de projet prĂ©fĂ©rĂ© :

npm init docusaurus

Exécutez npx create-docusaurus@latest --help, ou consulter ses docs de l'API pour plus informations à propos des options disponibles.

Structure du projet​

En supposant que vous avez choisi le template classic et nommĂ© votre site my-website, vous verrez les fichiers suivants gĂ©nĂ©rĂ©s dans un nouveau rĂ©pertoire my-website/ :

my-website
├── blog
│ ├── 2019-05-28-hola.md
│ ├── 2019-05-29-hello-world.md
│ └── 2020-05-30-welcome.md
├── docs
│ ├── doc1.md
│ ├── doc2.md
│ ├── doc3.md
│ └── mdx.md
├── src
│ ├── css
│ │ └── custom.css
│ └── pages
│ ├── styles.module.css
│ └── index.js
├── static
│ └── img
├── docusaurus.config.js
├── package.json
├── README.md
├── sidebars.js
└── yarn.lock

RĂ©capitulatif de la structure du projet​

  • /blog/ - Contient les fichiers Markdown du blog. Vous pouvez supprimer le rĂ©pertoire si vous avez dĂ©sactivĂ© le plugin du blog, ou vous pouvez changer son nom aprĂšs avoir dĂ©fini l'option path. Vous trouverez plus de dĂ©tails dans le guide du blog
  • /docs/ - Contient les fichiers Markdown pour la documentation. Personnalisez l'ordre de la barre latĂ©rale des docs dans sidebars.js. Vous pouvez supprimer le rĂ©pertoire si vous avez dĂ©sactivĂ© le plugin des docs, ou vous pouvez changer son nom aprĂšs avoir dĂ©fini l'option path. Vous trouverez plus de dĂ©tails dans le guide des docs
  • /src/ - Fichiers de non-documentation comme les pages ou les composants React personnalisĂ©s. Vous n'ĂȘtes pas obligĂ© de placer vos fichiers de non-documentation ici, mais les placer dans un rĂ©pertoire centralisĂ© permet de les spĂ©cifier plus facilement au cas oĂč vous auriez besoin de faire une sorte de vĂ©rification/traitement
    • /src/pages - Tous les fichiers JSX/TSX/MDX de ce rĂ©pertoire seront convertis en page de site. Vous trouverez plus de dĂ©tails dans le guide des pages
  • /static/ - RĂ©pertoire statique. Tout contenu Ă  l'intĂ©rieur sera copiĂ© Ă  la racine du rĂ©pertoire final du build
  • /docusaurus.config.js - Un fichier de configuration contenant la configuration du site. Ceci est l'Ă©quivalent de siteConfig.js dans Docusaurus v1
  • /package.json - Un site Web Docusaurus est une application React. Vous pouvez y installer et utiliser tous les paquets npm que vous souhaitez
  • /sidebars.js - UtilisĂ© par la documentation pour spĂ©cifier l'ordre des documents dans la barre latĂ©rale

Monorepos​

Si vous utilisez Docusaurus pour la documentation d'un projet existant, un monorepo peut ĂȘtre la solution pour vous. Les monorepos vous permet de partager des dĂ©pendances entre des projets similaires. Par exemple, votre site web peut utiliser vos paquets locaux pour prĂ©senter les derniĂšres fonctionnalitĂ©s au lieu de dĂ©pendre d'une version publiĂ©e. Ensuite, vos contributeurs peuvent mettre Ă  jour les documents au fur et Ă  mesure qu'ils implĂ©mentent des fonctionnalitĂ©s. Un exemple de structure de dossier monorepo est ci-dessous :

my-monorepo
├── package-a # Un autre paquet, votre projet actuel
│ ├── src
│ └── package.json # Les dĂ©pendances du paquet A
├── website # racine de Docusaurus
│ ├── docs
│ ├── src
│ └── package.json # Les dĂ©pendances de Docusaurus
├── package.json # dĂ©pendances partagĂ©es du monorepo

Dans ce cas, vous devriez exécuter npx create-docusaurus dans le dossier ./my-monorepo.

Si vous utilisez un hĂ©bergeur comme Netlify ou Vercel, vous devrez changer le rĂ©pertoire de base du site Ă  l'endroit oĂč se trouve votre racine Docusaurus. Dans ce cas, ce serait ./website. Pour en savoir plus sur la configuration des commandes ignorĂ©es, consultez la documentation sur le dĂ©ploiement.

En savoir plus sur les monorepos dans la documentation Yarn (Yarn n'est pas le seul moyen de mettre en place un monorepo, mais c'est une solution commune), ou vérifiez Docusaurus et Jest pour quelques exemples du monde réel.

ExĂ©cution du serveur de dĂ©veloppement​

Pour prévisualiser vos modifications au fur et à mesure que vous modifiez les fichiers, vous pouvez lancer un serveur de développement local qui servira votre site Web et reflétera les derniÚres modifications.

cd my-website
npm run start

Par dĂ©faut, une fenĂȘtre du navigateur s'ouvrira sur http://localhost:3000.

Félicitations ! Vous venez de créer votre premier site Docusaurus ! Naviguez sur le site pour voir ce qui est disponible.

Construction​

Docusaurus est un gĂ©nĂ©rateur de site web statique moderne donc nous avons besoin de construire le site web dans un rĂ©pertoire de contenu statique et de le mettre sur un serveur web pour qu'il puisse ĂȘtre consultĂ©. Pour construire le site web :

npm run build

et le contenu sera gĂ©nĂ©rĂ© dans le rĂ©pertoire /build, qui peut ĂȘtre copiĂ© dans n'importe quel service d'hĂ©bergement de fichiers statique comme GitHub pages, Vercel ou Netlify. Consultez la documentation sur le dĂ©ploiement pour plus de dĂ©tails.

Mise à jour de votre version Docusaurus​

Il y a de nombreuses façons de mettre Ă  jour votre version de Docusaurus. Une façon garantie est de changer manuellement le numĂ©ro de version dans package.json Ă  la version dĂ©sirĂ©e. Notez que tous les paquets nommĂ©s @docusaurus/ doivent utiliser la mĂȘme version.

package.json
{
"dependencies": {
"@docusaurus/core": "3.7.0",
"@docusaurus/preset-classic": "3.7.0",
// ...
}
}

Ensuite, dans le rĂ©pertoire contenant le fichier package.json, exĂ©cutez la commande d'installation de votre gestionnaire de paquets :

npm install
astuce

npm install may report several vulnerabilities and recommend running npm audit to address them. Typically, these reported vulnerabilities, such as RegExp DOS vulnerabilities, are harmless and can be safely ignored. Also read this article, which reflects our thinking: npm audit: Broken by Design.

Pour vérifier que la mise à jour a été effectuée avec succÚs, exécutez :

npx docusaurus --version

Vous devriez voir la version correcte en résultat.

Alternativement, si vous utilisez Yarn, vous pouvez faire :

yarn add @docusaurus/core @docusaurus/preset-classic
astuce

Utilisez de nouvelles fonctionnalités inédites de Docusaurus avec @canary npm dist tag

Des problĂšmes ?​

Ask for help on Stack Overflow, on our GitHub repository, our Discord server, or X.