Le composant ProjectSetup - Une façon standardisée de partager des structures de projet
Découvrez comment utiliser le nouveau composant ProjectSetup pour partager facilement des structures de projet dans vos articles de blog Docusaurus, avec des snippets de fichiers interactifs et des scripts d'installation automatisés.
Traduction automatique
Cet article fait partie de la série Créer des composants Docusaurus :
- Modifier la façon dont Docusaurus génère les balises img
- Surcharger la génération des balises img avec Docusaurus
- Organisez votre contenu Docusaurus avec un composant Series personnalisé
- Ajouter un bouton « retour en haut » dans les articles Docusaurus
- Créer un plugin de recherche/remplacement pour Docusaurus
- Un composant pour afficher des snippets de code dans un blog Docusaurus
- Un composant Docusaurus qui prévient le lecteur que l'article a plus d'un an
- Afficher le changelog de votre article
- Injecter de l'ASCII art dans toutes les pages HTML générées par Docusaurus
- Best Practice - Personnaliser le flux RSS de Docusaurus pour un contenu complet et des images
- Quelques vérifications sur les images de votre site Docusaurus
- Gestion des tags dans Docusaurus
- Automatiser les résumés TL;DR avec Gemini AI
- Le composant ProjectSetup - Une façon standardisée de partager des structures de projet
- Comment signaler un contenu assisté par IA dans un blog Docusaurus
- Donnez vie à vos tutoriels CLI avec un terminal machine à écrire
- Espiègleries de suricate : semer des easter eggs partout sur mon blog
- Tooltips de code assistés par l'IA dans Docusaurus — Explique-moi comme à un enfant de cinq ans
- Ajouter des réactions de lecteurs à votre blog Docusaurus
- Votre blog est illisible pour une IA. Voici la solution.
- Secouez votre téléphone, surprenez le suricate
- Ajouter un bouton « Copy as Markdown » à votre blog Docusaurus
- Ask My Blog : transformer 259 articles en 2 160 questions cherchables
- La troisième porte : une bulle de chat flottante, et la fonctionnalité que personne ne trouvait
- Dessiner une carte de mon propre blog
- Laissez vos lecteurs signaler les problèmes — un widget de feedback multi-types pour Docusaurus

Le composant ProjectSetup est un nouvel outil pour Docusaurus qui permet de partager des structures de projet de façon standardisée et interactive. Il affiche les arborescences de fichiers avec des snippets repliables, génère des scripts d'installation et propose un téléchargement au format ZIP. Vos lecteurs peuvent ainsi reproduire les projets de vos articles beaucoup plus facilement.
Sur mon blog, je partage souvent des composants que j'ai créés pour Docusaurus. Pour permettre aux lecteurs de reproduire facilement ces projets, je cherchais une manière interactive et standardisée de partager des arborescences de fichiers. C'est ce qui m'a amené à créer le composant ProjectSetup.
Il permet d'afficher la structure d'un projet de façon claire et interactive, avec un snippet de code pour chaque fichier. Mais sa vraie force, sa « killer feature », c'est ceci : en un seul clic sur le bouton « Generate install script », vous obtenez une commande shell. Copiez-la, collez-la dans votre terminal Linux, exécutez-la et... voilà. Toute l'arborescence du projet, dossiers et fichiers compris, est créée pour vous.
Pour ceux qui préfèrent, le composant propose aussi de télécharger le projet sous forme d'archive ZIP. Dans cet article, je vous montre comment ça fonctionne et comment l'intégrer pour partager efficacement vos propres projets.
Le voir à l'œuvre
La meilleure façon de vous montrer comment utiliser ProjectSetup, c'est d'utiliser le composant lui-même. Voici comment installer le composant LogoIcon dans votre propre projet Docusaurus.
Besoin d'aide ? Cliquez sur le bouton « Aide » ci-dessus pour les instructions de mise en place.
À ce stade, vous vous dites peut-être : oh la la, ça doit être fastidieux d'écrire le code HTML derrière cette jolie boîte 📦 Project setup: src/components/Blog/LogoIcon ci-dessus. En fait, pas du tout. Tout le rendu est pris en charge par le composant ProjectSetup lui-même. Voici le code Markdown que j'ai écrit dans mon article Docusaurus :
<ProjectSetup folderName="src/components/Blog/LogoIcon">
<Guideline>
Install the dependency: `npm install @iconify/react`
</Guideline>
<Snippet filename="src/components/Blog/LogoIcon/index.tsx" source="src/components/Blog/LogoIcon/index.tsx" />
</ProjectSetup>
Toujours à jour
Et vous savez quoi ? Le composant Snippet utilisé ici est assez malin pour lire la structure et le contenu du fichier src/components/Blog/LogoIcon/index.tsx, et pour en faire ce joli rendu interactif. Vous n'avez qu'à écrire le code Markdown ci-dessus, le composant fait le reste. Votre documentation reste toujours synchronisée avec le contenu réel du fichier, et vous n'avez pas à vous soucier du formatage ou du style. Vous écrivez le Markdown, le composant s'occupe du reste.
Qu'est-ce que ProjectSetup ?
ProjectSetup est un composant React qui permet d'afficher la structure de fichiers d'un projet de façon propre, interactive et standardisée. Il montre non seulement les fichiers et leur contenu, mais fournit aussi des outils pour générer le projet en une seule commande ou le télécharger au format ZIP.
Cet article illustre comment utiliser le composant ProjectSetup pour partager des structures de projet dans vos articles de blog Docusaurus, et ainsi permettre à vos lecteurs de reproduire vos projets et d'en tirer profit plus facilement.
Fonctionnalités principales
- Affichage interactif des fichiers : les fichiers s'affichent dans des snippets repliables, avec coloration syntaxique.
- Génération de script shell : un script bash est généré automatiquement pour créer toute l'arborescence de dossiers et de fichiers.
- Téléchargement ZIP : les utilisateurs peuvent télécharger le projet complet sous forme d'archive ZIP.
- Instructions post-installation : vous pouvez ajouter des consignes à afficher après l'installation.
Dépendances
Le composant ProjectSetup s'appuie sur deux autres composants :
LogoIcon: un composant simple qui affiche une icône selon le type de fichier, ce qui rend l'interface plus intuitive. Il utilise la très répandue bibliothèque@iconify/react. LogoIcon a été créé par
Docux, allez jeter un œil à son travail : Component LogoIcon.Snippet: ce composant se charge d'afficher chaque fichier. C'est un container repliable qui montre le nom du fichier, une icône pertinente et le code correspondant. Lisez mon article précédent sur le sujet : Un composant pour afficher des snippets de code dans un blog Docusaurus
Installer le reste
Voici comment installer les composants Snippet et ProjectSetup restants dans votre propre projet Docusaurus.
1. Installer Snippet
Mettons maintenant en place le composant Snippet. Il a un peu plus de dépendances.
Besoin d'aide ? Cliquez sur le bouton « Aide » ci-dessus pour les instructions de mise en place.
2. Installer ProjectSetup
Enfin, voici comment installer le composant ProjectSetup lui-même.
Besoin d'aide ? Cliquez sur le bouton « Aide » ci-dessus pour les instructions de mise en place.
3. La page d'aide project_setup
Le composant ProjectSetup renvoie vers une page d'aide qui explique comment l'utiliser. Vous pouvez personnaliser cette page en éditant le fichier src/pages/project_setup.mdx. Voici la mienne :
Conclusion
Le composant ProjectSetup est un outil puissant pour partager des structures de projet dans vos articles de blog Docusaurus. Il offre une manière interactive d'explorer l'arborescence des fichiers, génère des scripts d'installation et propose un téléchargement ZIP, ce qui facilite la reproduction de vos projets. En l'utilisant, vous améliorez l'expérience d'apprentissage de vos lecteurs et les incitez à s'impliquer davantage dans votre contenu.
Cet article fait partie de la série Créer des composants Docusaurus :
- Modifier la façon dont Docusaurus génère les balises img
- Surcharger la génération des balises img avec Docusaurus
- Organisez votre contenu Docusaurus avec un composant Series personnalisé
- Ajouter un bouton « retour en haut » dans les articles Docusaurus
- Créer un plugin de recherche/remplacement pour Docusaurus
- Un composant pour afficher des snippets de code dans un blog Docusaurus
- Un composant Docusaurus qui prévient le lecteur que l'article a plus d'un an
- Afficher le changelog de votre article
- Injecter de l'ASCII art dans toutes les pages HTML générées par Docusaurus
- Best Practice - Personnaliser le flux RSS de Docusaurus pour un contenu complet et des images
- Quelques vérifications sur les images de votre site Docusaurus
- Gestion des tags dans Docusaurus
- Automatiser les résumés TL;DR avec Gemini AI
- Le composant ProjectSetup - Une façon standardisée de partager des structures de projet
- Comment signaler un contenu assisté par IA dans un blog Docusaurus
- Donnez vie à vos tutoriels CLI avec un terminal machine à écrire
- Espiègleries de suricate : semer des easter eggs partout sur mon blog
- Tooltips de code assistés par l'IA dans Docusaurus — Explique-moi comme à un enfant de cinq ans
- Ajouter des réactions de lecteurs à votre blog Docusaurus
- Votre blog est illisible pour une IA. Voici la solution.
- Secouez votre téléphone, surprenez le suricate
- Ajouter un bouton « Copy as Markdown » à votre blog Docusaurus
- Ask My Blog : transformer 259 articles en 2 160 questions cherchables
- La troisième porte : une bulle de chat flottante, et la fonctionnalité que personne ne trouvait
- Dessiner une carte de mon propre blog
- Laissez vos lecteurs signaler les problèmes — un widget de feedback multi-types pour Docusaurus
Chargement des commentaires…






