Qu'est-ce que Chalk et pourquoi l'utiliser ?
Chalk est l'une des bibliothèques Node.js les plus populaires pour styliser la sortie dans le terminal (console). Si vous avez déjà écrit console.log() en souhaitant que le texte soit coloré, gras, souligné ou clignotant, Chalk résout ce problème de manière élégante et simple.
Pourquoi est-ce utile ? Dans les projets réels, une sortie colorée permet de :
- Distinguer visuellement les logs (erreurs en rouge, avertissements en jaune, succès en vert).
- Améliorer l'UX des utilitaires CLI et des scripts.
- Attirer l'attention sur les messages importants.
- Rendre la sortie plus lisible dans les longs logs.
Chalk n'a aucune dépendance, fonctionne rapidement et prend en charge le chaînage (chaining). Il détecte automatiquement si le terminal prend en charge les couleurs et désactive la stylisation si nécessaire (par exemple, lors de la redirection de la sortie vers un fichier).
Installation
Chalk est distribué via npm. Installez-le dans votre projet :
npm install chalk
Si vous utilisez yarn :
yarn add chalk
Après l'installation, importez la bibliothèque dans votre script :
const chalk = require('chalk');
Pour les projets utilisant les modules ES (type: "module" dans package.json), l'importation se fait ainsi :
import chalk from 'chalk';
Important : Depuis la version 5.0, Chalk est passé en ESM-only (modules ES uniquement). Si vous utilisez CommonJS (require), installez la version 4.x :
npm install chalk@4.1.2
Démarrage rapide
Essayons un premier exemple. Créez un fichier example.js et écrivez :
const chalk = require('chalk');
console.log(chalk.blue('Bonjour tout le monde !'));
console.log(chalk.red.bold('Erreur !'));
console.log(chalk.green.underline('Succès'));
console.log(chalk.yellow.bgBlue('Texte jaune sur fond bleu'));
Exécutez :
node example.js
Vous verrez une sortie colorée. Si les couleurs ne s'affichent pas, vérifiez que votre terminal prend en charge les couleurs ANSI (les terminaux modernes le font).
Méthodes et fonctions principales
Chalk propose deux types d'API : les modificateurs (styles de texte) et les couleurs (couleur du texte et du fond). Tous peuvent être combinés via le chaînage.
1. chalk.red() — couleur de texte rouge
Fonction : Colore le texte en rouge. Principalement utilisé pour les messages d'erreur.
Paramètres : Accepte une chaîne ou plusieurs chaînes (séparées par des virgules, elles seront concaténées).
console.log(chalk.red('Erreur : fichier introuvable'));
console.log(chalk.red('Erreur', 'critique', 'système')); // concatène avec un espace
2. chalk.green() — couleur de texte vert
Fonction : Colore le texte en vert. Utilisé pour les messages de succès.
Paramètres : Identique à red.
console.log(chalk.green('Opération réussie'));
console.log(chalk.green('✓', 'Terminé'));
3. chalk.blue() — couleur de texte bleu
Fonction : Colore le texte en bleu. Souvent utilisé pour les messages d'information.
Paramètres : Une chaîne ou plusieurs chaînes.
console.log(chalk.blue('Info : version 2.0.1'));
4. chalk.yellow() — couleur de texte jaune
Fonction : Colore le texte en jaune. Traditionnellement utilisé pour les avertissements.
Paramètres : Une chaîne ou plusieurs chaînes.
console.log(chalk.yellow('Avertissement : batterie faible'));
5. chalk.bo
Aussi dans la bibliothèque
Travailler avec CSV en Kotlin : bibliothèques et exemples de code
Validation des données en Java : aperçu des bibliothèques et approches
Rate Limiting en Go (Golang) : bibliothèques, modèles et exemples de mise en œuvre
Validation des données en PHP : guide et outils