Archives Wild Code School
Node.js

Node 03 - đŸ‘šđŸ»â€đŸš€ Commence Ă  linter et Ă  formater ton code en utilisant Biome

QuĂȘte 3 sur 5 · 1 image archivĂ©e

Objectifs

  • Comprendre ce qu'est un linter.
  • Installer et utiliser Biome.

Pré-requis

  1. 1

    Valider la quĂȘte suivante

    QuĂȘtes liĂ©es

Introduction

Les linters sont des outils d’analyse statique du code qui aident Ă  dĂ©tecter des erreurs, des incohĂ©rences de style et des problĂšmes potentiels avant l'exĂ©cution du programme. Ils sont particuliĂšrement utiles pour garantir la qualitĂ© du code, amĂ©liorer la maintenabilitĂ© et assurer la cohĂ©rence entre les membres d'une Ă©quipe.

Un linter permet :

  • Une dĂ©tection d'erreurs prĂ©coces : Il identifie les erreurs courantes de syntaxe et de logique.
  • Le respect de conventions : Il applique des rĂšgles de style uniformes sur l’ensemble du projet.
  • L'amĂ©lioration des performances : Il repĂšre des pratiques inefficaces et des optimisations possibles.
  • De faciliter la relecture de code : Il rĂ©duit les diffĂ©rences de style, permettant de se concentrer sur la logique mĂ©tier.

Traditionnellement, l'Ă©cosystĂšme JavaScript et TypeScript repose sur ESLint pour l’analyse statique et Prettier pour le formatage automatique du code. Cependant, une alternative moderne Ă©merge : Biome.

Sommaire

Biome : Une alternative Ă  ESLint + Prettier

Biome est un outil unifiĂ© qui remplace ESLint, Prettier et d'autres outils d'analyse tout en Ă©tant extrĂȘmement rapide et facile Ă  configurer.

Biome a plusieurs avantages :

  • 🔄 Tout-en-un : Linter, formateur et outil d'analyse.
  • 🚀 Ultra rapide grĂące Ă  Rust.
  • 📩 Aucune dĂ©pendance lourde : Contrairement Ă  ESLint et Prettier qui nĂ©cessitent plusieurs configurations et plugins.
  • 🔧 Configuration simplifiĂ©e : FacilitĂ© d’installation et de maintenance.

Pour comparer :

Fonctionnalité Biome ESLint + Prettier
Vitesse 🚀 Ultra rapide 🐱 Plus lent
Linter ✅ Inclus ✅ NĂ©cessite ESLint
Formateur ✅ Inclus ✅ Prettier requis
Configuration 📩 Simple ⚙ Parfois complexe
DĂ©pendances 📉 Aucune (standalone) 📩 Plusieurs packages

Installation et configuration

  1. 1

    Initialise un projet node

    Crée un "bac à sable" pour expérimenter sans risques avec :

    bash
    cd ~ # Se placer dans le répertoire utilisateur
    mkdir sandbox-biome
    cd sandbox-biome
    npm init -y
    
  2. 2

    Installe Biome

    Dans ton projet node, lance la commande :

    bash
    npm install --save-dev --save-exact @biomejs/biome
    
    Info

    L'option --save-exact garantit que tous les membres du projet utilisent la mĂȘme version de Biome.

  3. 3

    Configure Biome

    Initialise la configuration de Biome avec :

    bash
    npx @biomejs/biome init
    

    Cela génÚre un fichier biome.json avec la configuration par défaut.

  4. 4

    Configure Biome dans VSCode

    Dans VSCode, installe l'extension Biome.

    Active ensuite le formatage automatique :

    1. Ouvre les paramĂštres (Ctrl + , sur Windows/Linux, Cmd + , sur macOS).
    2. Tape format dans la barre de recherche.
    3. Sélectionne Biome comme formateur par défaut dans la liste Editor: Default Formatter.
    4. Coche la case Editor: Format On Save.

Utilisation

Pour tester, crée un fichier index.js dans ton projet node avec :

javascript
let number = 2;

function doubleIt (value)
{
return value * 2;
}

doubleIt(number);
Attention

Si tu as activé le Format On Save dans VSCode, Biome reformate automatiquement le fichier quand tu sauvegardes :

javascript
var number = 2;

function doubleIt(value) {
	return value * 2;
}

doubleIt(number);

Vérifier un fichier

Lance la commande :

bash
npx @biomejs/biome check index.js

Biome affiche des erreurs pour tous ce qui ne respecte pas ses rĂšgles de codage :

bash
index.js:1:1 lint/style/noVar  FIXABLE  ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  ! This let declares a variable that is only assigned once.
  
  > 1 │ let number = 2;
      │ ^^^^^^^^^^^^^^
    2 │ 
    3 │ function doubleIt(value) {

  â„č 'number' is never reassigned.
    
  â„č Unsafe fix: Use 'const' instead.
  
    1   │ - let·number·=·2;
      1 │ + const·number·=·2;
    2 2 │   
    3 3 │   function doubleIt(value) {
  
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

  Checked 1 file in 5ms. No fixes applied.
  Found 1 warning.

Ici, tu dois remplacer le mot-clé let par const.

Corriger automatiquement les erreurs

Utilise l'option --write pour appliquer les corrections :

bash
npx @biomejs/biome check --write index.js

Biome corrigera toutes les erreurs qui peuvent l'ĂȘtre de maniĂšre sĂ»re.

Résumé

  • Biome est un outil rapide et tout-en-un qui remplace ESLint + Prettier.
  • Installe-le avec npm install --save-dev --save-exact @biomejs/biome.
  • CrĂ©e un fichier de configuration avec npx @biomejs/biome init.
  • VĂ©rifie des fichiers avec npx @biomejs/biome check <fichiers>.
  • Applique des corrections automatiques avec npx @biomejs/biome check --write <fichiers>.

Pour en savoir plus :

↗
https://biomejs.dev/

Site officiel de Biome

biomejs.dev

Ressources partagĂ©es sur cette quĂȘte