Skip to content

Configuration

Volta utilise plusieurs fichiers de configuration pour gérer votre chaîne d'outils JavaScript. Cette référence explique les options de configuration disponibles et leurs formats.

Configuration de projet

La configuration spécifique à un projet est stockée sous la clé volta dans le fichier package.json du projet.

Format

json
{
  "volta": {
    "node": "16.14.2",
    "npm": "8.5.0",
    "yarn": "1.22.19",
    "extends": "../shared-volta-config.json"
  }
}

Propriétés

PropriétéTypeDescription
nodeStringVersion de Node.js à utiliser dans ce projet
npmStringVersion de npm à utiliser dans ce projet
yarnStringVersion de Yarn à utiliser dans ce projet
pnpmStringVersion de pnpm à utiliser dans ce projet
extendsStringChemin vers un fichier de configuration Volta partagé

Formats de version

Les chaînes de version dans la configuration volta peuvent utiliser les formats suivants :

  • Version exacte : 16.14.2
  • Version majeure seulement : 16
  • Versions majeure et mineure : 16.14
  • Plage de versions (npm semver) : ^16.14.0
  • Tags : latest, lts

Configuration de projet partagée

Vous pouvez créer des configurations Volta partagées que plusieurs projets peuvent étendre. Ceci est utile pour les organisations qui veulent standardiser les versions d'outils entre projets.

Format

json
{
  "node": "16.14.2",
  "npm": "8.5.0"
}

Le format est le même que la section volta dans package.json, mais au niveau racine du fichier JSON.

Configuration utilisateur

La configuration utilisateur de Volta est stockée dans le répertoire principal de Volta :

  • Unix : ~/.volta/
  • Windows : %LOCALAPPDATA%\Volta\

Stockage d'outils

Les outils installés sont stockés dans des répertoires structurés :

  • Node.js : ~/.volta/tools/image/node/
  • Gestionnaires de paquets : ~/.volta/tools/image/yarn/, ~/.volta/tools/image/npm/
  • Paquets : ~/.volta/tools/user/packages/

Répertoire de hooks

Les hooks personnalisés sont stockés dans ~/.volta/hooks/. Voir la section Fonctionnalités avancées pour plus de détails.

Variables d'environnement

Les variables d'environnement fournissent une autre façon de configurer le comportement de Volta. Voir la page Variables d'environnement pour une référence complète.

Priorité de configuration

Lors de la résolution de quelle version d'outil utiliser, Volta vérifie les sources dans cet ordre :

  1. Arguments de ligne de commande (par exemple, volta run --node 14)
  2. Configuration de projet dans le package.json le plus proche contenant une section volta
  3. Versions d'outils par défaut de l'utilisateur (définies via volta install)
  4. Versions groupées (par exemple, npm groupé avec Node.js)

Exemples

Configuration de projet typique

json
{
  "name": "my-project",
  "version": "1.0.0",
  "volta": {
    "node": "16.14.2",
    "npm": "8.5.0"
  },
  "dependencies": {
    // ...
  }
}

Configuration étendue

json
// shared-config.json
{
  "node": "16.14.2",
  "yarn": "1.22.19"
}

// package.json
{
  "name": "my-project",
  "version": "1.0.0",
  "volta": {
    "extends": "./shared-config.json",
    "npm": "8.5.0"  // Remplace toute version npm de la configuration étendue
  }
}

Configuration d'espace de travail

Pour les projets basés sur des espaces de travail, la configuration du package.json racine s'applique à tous les paquets de l'espace de travail :

json
// package.json racine
{
  "name": "workspace-root",
  "volta": {
    "node": "16.14.2",
    "yarn": "1.22.19"
  },
  "workspaces": [
    "packages/*"
  ]
}

// packages/app/package.json - utilisera Node.js 16.14.2 et Yarn 1.22.19
{
  "name": "app",
  "version": "1.0.0",
  // Aucune section volta nécessaire ici
}