Comment activer et utiliser pnpm dans ServBay
pnpm
est un gestionnaire de paquets Node.js moderne et performant, conçu pour résoudre les limitations des gestionnaires traditionnels comme npm
et yarn
lors de la gestion des dépendances. En utilisant un système de fichiers à adressage par contenu avec des liens physiques (hard links) et des liens symboliques, pnpm
réduit considérablement l’espace disque utilisé tout en accélérant significativement la vitesse des installations. Pour les développeurs qui utilisent ServBay pour leurs projets Node.js, maîtriser pnpm
permet de gérer les dépendances de manière bien plus efficace.
Les paquets Node.js intégrés à ServBay incluent corepack
, un outil expérimental officiel de Node.js permettant de gérer et d’activer des versions spécifiques de gestionnaires de paquets (comme npm
, yarn
ou pnpm
) pour chaque projet. Après l’installation de Node.js via ServBay, vous pouvez activer pnpm
en utilisant une simple commande avec corepack
.
Activer pnpm
Si la commande pnpm
n’est pas immédiatement disponible, c’est généralement parce que vous ne l’avez pas encore activée via corepack
. Suivez les étapes ci-dessous pour l’activer :
Ouvrez votre application Terminal.
Saisissez la commande suivante pour activer
pnpm
viacorepack
:bashcorepack enable pnpm
1Si la commande réussit, il n’y aura habituellement aucun message de retour. Cela signifie que
corepack
a correctement ajouté la commandepnpm
à votre système.Vérifiez que
pnpm
est bien activé et consultez son numéro de version :bashpnpm -v
1Cette commande devrait afficher la version actuelle de
pnpm
, par exemple :bash9.1.0
1Si la version s’affiche dans le terminal, cela signifie que
pnpm
est prêt à être utilisé.
Message de téléchargement de corepack
Lorsque vous utilisez la commande pnpm
, il se peut que vous voyiez un message similaire au suivant. Cela signifie que corepack
est en train de télécharger ou de mettre à jour la version requise de pnpm
. Il s’agit d’un comportement normal de corepack
pour garantir que vous utilisez la version adaptée à votre projet ou la plus récente.
$ pnpm -v
! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-9.0.6.tgz
? Do you want to continue? [Y/n]
2
3
Tapez Y
puis appuyez sur Entrée pour permettre à corepack
de télécharger et de poursuivre l’exécution de la commande pnpm
. Une fois le téléchargement terminé, la commande s’exécutera normalement et affichera la version (ou le résultat correspondant à la commande entrée).
Atouts majeurs de pnpm et exemples d’utilisation
pnpm
a été conçu pour optimiser la gestion des dépendances. Tous les paquets sont centralisés dans un stockage global adressé par contenu, chaque version de paquet étant stockée une seule fois. Lorsqu’un projet requiert une dépendance, pnpm
crée un lien physique depuis ce stockage global, et structure le dossier node_modules
à l’aide de liens symboliques pour obtenir une structure plate. À la différence de npm
et ses problèmes de dépendances “fantômes”, pnpm
restreint strictement l’accès : seuls les modules explicitement déclarés comme dépendances directes sont accessibles.
Cette approche offre plusieurs avantages notables :
- Économie d’espace disque : Les différents projets partagent les mêmes fichiers de dépendance, évitant la duplication inutile.
- Installation ultra-rapide : Le plus souvent, les fichiers nécessaires sont déjà présents dans le stockage global, il suffit donc de créer des liens — bien plus rapide que la copie ou le téléchargement.
- Structure de dépendances stricte : Cela prévient les problèmes de “phantom dependencies” et rend la gestion des dépendances plus claire et maîtrisée.
Voici quelques exemples de commandes courantes de pnpm
dans l’environnement ServBay :
Supposons que votre projet soit situé dans un sous-dossier du répertoire racine des sites ServBay, par exemple /Applications/ServBay/www/my-servbay-app
.
Installer les dépendances du projet
Après être entré dans le répertoire de votre projet, utilisez la commande pnpm install
pour installer toutes les dépendances définies dans votre package.json
:
cd /Applications/ServBay/www/my-servbay-app
pnpm install
2
pnpm
vérifiera le stockage global, téléchargera les éventuels paquets manquants et créera des liens dans le dossier node_modules
de votre projet.
Ajouter une nouvelle dépendance
Pour ajouter une nouvelle dépendance au projet, par exemple lodash
:
pnpm add lodash
Cette commande téléchargera lodash
(si nécessaire), créera le lien adéquat et mettra automatiquement à jour les fichiers package.json
et pnpm-lock.yaml
.
Supprimer une dépendance
Pour supprimer une dépendance dont vous n’avez plus besoin, par exemple lodash
:
pnpm remove lodash
Cela retirera lodash
des dépendances du projet et actualisera les fichiers package.json
et pnpm-lock.yaml
.
Exécuter des scripts
pnpm
permet également d’exécuter les scripts définis dans la section scripts
de votre package.json
:
pnpm run dev
# Ou en version abrégée
pnpm dev
2
3
Exécuter des commandes de paquets (pnpx)
De façon similaire à npx
, pnpm
propose pnpx
(ou directement pnpm exec
) pour exécuter des commandes installées localement dans le dossier node_modules/.bin
de votre projet, sans installer quoi que ce soit globalement :
pnpm exec webpack --version
# Ou, en version abrégée :
pnpx webpack --version
2
3
Conclusion
Grâce à la commande corepack enable pnpm
, vous pouvez activer très simplement pnpm
dans l’environnement Node.js de ServBay. En tirant parti de la gestion optimisée des dépendances qu’offre pnpm
, vous accélérerez nettement l’installation des modules nécessaires à vos projets Node.js et gagnerez en efficacité, tout en économisant de l’espace disque. Pour les utilisateurs de ServBay qui recherchent une expérience de développement fluide et performante, pnpm
s’impose comme un outil incontournable.