đžïž WebStorm â IDE JavaScript, TypeScript & Frameworks
Guide complet IDEO-Lab pour maĂźtriser l'IDE Web de JetBrains (React, Vue, Angular, Node).
Vue d'ensemble
Qu'est-ce que WebStorm ? L'IDE JS de JetBrains.
IDE JavaScript TypeScriptvs. VS Code
Comparaison (IDE IntĂ©grĂ© vs Ăditeur Modulaire).
VS Code Refactoring IndexationInstallation (Toolbox)
Toolbox App (reco), Snap, Inclus dans IntelliJ Ultimate.
Toolbox IntelliJStructure Projet & UI
.idea, package.json, node_modules.
Gestion des Paquets
UI npm/yarn, auto-détection package.json.
Linters & Formatters
Intégration ESLint, Prettier, Stylelint.
ESLint Prettier FormatĂditeur & Intentions
Smart completion, Alt+Entrée (imports, types).
Refactoring
Rename (Shift+F6), Extract Component/Hook.
Navigation (Usages)
Ctrl+B (CSS/JS/HTML), Find Usages (Alt+F7).
Run/Debug Configs
Gérer les configurations (Node, npm, Jest).
Run Debug ConfigurationDébogage Node.js
Breakpoints, Stepping (F7/F8), Console.
Debugger Node.js BreakpointsDébogage Client (Browser)
Connexion Ă Chrome/Firefox, DOM, breakpoints.
Chrome Browser Client-sideSupport React
JSX, Hooks, Refactor (Extract Component).
React JSX HooksSupport Angular
Intégration CLI, templates, navigation.
Angular TypeScriptSupport Vue.js
SFC (.vue), Nuxt.js, Pinia, Navigation.
Intégration Git
Commit, Push, Pull, Branches, Merge (UI).
Git VCS Ctrl+KTests (Jest, Vitest)
Lancer les tests via l'UI, débogage de tests.
Jest Vitest Test RunnerCheat-sheet
Top 10 des raccourcis indispensables.
Shortcuts RaccourcisL'IDE JavaScript "Intelligent"
WebStorm est l'Environnement de Développement Intégré (IDE) de JetBrains, spécifiquement conçu pour l'écosystÚme JavaScript et TypeScript.
Il est construit sur la plateforme IntelliJ et est considéré comme l'un des IDE les plus puissants pour le développement front-end et Node.js.
Cas d'usage
- Front-end : React, Angular, Vue.js, Svelte.
- Back-end : Node.js, Express, NestJS.
- Full-stack : Applications TypeScript modernes.
- Mobile : React Native, Ionic.
Flux de travail typique (JS/TS)
1. Création/Clone Projet
â
âŒ
2. Installation (npm/yarn)
â (WebStorm indexe node_modules)
âŒ
3. Configuration Linter
â (ESLint, Prettier)
âŒ
4. Codage
â (Ăditeur, Auto-complĂ©tion, Alt+EntrĂ©e)
âŒ
5. Refactoring
â (Rename, Extract Component)
âŒ
6. Debug
â (Serveur Node.js ou Browser Chrome)
âŒ
7. Test
â (Lancement de Jest/Vitest)
âŒ
8. Commit (VCS)C'est le dĂ©bat principal dans l'Ă©cosystĂšme JS. Le choix dĂ©pend de la philosophie (IDE vs Ăditeur).
| CritĂšre | WebStorm | VS Code (avec extensions) |
|---|---|---|
| Type | IDE IntĂ©grĂ© (Tout-en-un). | Ăditeur de code (Modulaire). |
| Prise en main | Payant. Plus lourd (indexation). | Gratuit. Léger, démarrage rapide. |
| Configuration | "Zéro-config". Tout fonctionne (Git, Debug, TS) à l'installation. | Nécessite une configuration (launch.json) et des extensions. |
| Refactoring | Excellent. "Safe Rename" (Shift+F6) met à jour les imports et les usages de maniÚre fiable. | Bon, mais moins fiable. Le "Rename" est souvent un "Find/Replace" sémantique. |
| Navigation | Excellente. Ctrl+B sur une classe CSS dans du HTML saute au fichier .css. | Bonne, mais dépend des extensions (ex: "Go to Definition" sur CSS). |
| Débogueur | Excellent (UI graphique). | Excellent (launch.json). |
En résumé : WebStorm est un "tank" qui brille par son refactoring sécurisé et son intégration "zéro-config". VS Code est plus léger, gratuit, et incroyablement populaire, mais demande plus de configuration manuelle.
La JetBrains Toolbox App
C'est la méthode d'installation recommandée par JetBrains pour tous les OS (Windows, macOS, Linux).
- Téléchargez "Toolbox App" depuis le site de JetBrains.
- Installez-la.
- Depuis la Toolbox, cliquez sur "Install" à cÎté de "WebStorm".
Avantages de la Toolbox
- Mises Ă jour faciles : Met Ă jour l'IDE en un clic.
- Rollbacks : Si une mise à jour pose problÚme, vous pouvez revenir à la version précédente.
- Gestion centralisée : GÚre tous vos IDE JetBrains.
Note : Inclus dans IntelliJ IDEA Ultimate
WebStorm est un IDE payant (aprÚs une période d'essai de 30 jours).
Important : Si vous possédez déjà IntelliJ IDEA Ultimate (pour le développement Java/Kotlin/Spring), vous n'avez pas besoin de WebStorm.
IntelliJ Ultimate contient 100% des fonctionnalités de WebStorm (ainsi que celles de PyCharm Pro, GoLand, etc.) sous forme de plugins pré-installés.
Structure de Fichiers
L'IDE est centré sur package.json.
mon-projet/ âââ .idea/ â âââ (Fichiers de config de WebStorm. â Ă mettre dans .gitignore) â âââ node_modules/ â âââ (DĂ©pendances. WebStorm les indexe â pour l'auto-complĂ©tion.) â âââ src/ â âââ (Vos fichiers .js/.ts) â âââ package.json â (Le cĆur du projet) â âââ tsconfig.json (ou jsconfig.json)
Indexation
Au premier lancement, WebStorm indexe tout le projet, y compris node_modules. Cela peut prendre du temps, mais c'est ce qui permet :
- L'auto-complétion instantanée des imports.
- La navigation (
Ctrl+B) vers le code source des librairies. - Le refactoring "safe".
Vues Principales (Tool Windows)
- 1. Project (Alt+1) : L'arbre de vos fichiers.
- 9. Git (Alt+9) : L'interface de version control.
- 5. Debug (Alt+5) : Le débogueur.
- npm (Tool Window) : Gérer vos scripts et dépendances.
WebStorm s'intÚgre profondément avec package.json et vos gestionnaires de paquets (npm, yarn, pnpm).
La FenĂȘtre "npm"
Une fenĂȘtre d'outil dĂ©diĂ©e (Tool Window) "npm" apparaĂźt si un package.json est dĂ©tectĂ©.
Elle liste :
- Scripts : Tous les scripts de votre
package.json("start","build","test"). Vous pouvez double-cliquer pour les lancer. - Dépendances : (
dependencies,devDependencies).
Gestion Intelligente
Auto-Import : Si vous tapez le nom d'une librairie (ex: axios) dans le code, Alt+Entrée proposera de l'installer (npm install axios) et de l'ajouter à package.json.
Auto-Installation : Si vous ouvrez un projet (ou changez de branche Git) et que package.json a changé, WebStorm vous proposera de lancer npm install.
C'est une des forces de WebStorm : l'intégration "zéro-config" des outils de qualité de code.
ESLint / Stylelint
Si WebStorm détecte eslint (ou stylelint pour CSS) dans votre package.json, il l'active automatiquement.
- Analyse "on-the-fly" : Les erreurs ESLint apparaissent dans l'éditeur (soulignées).
Alt+Entrée: Propose de corriger l'erreur (ex: "Fix ESLint problem").- Configuration : (
Settings > Languages & Frameworks > ESLint) pour configurer l'auto-fix au sauvegardage.
Prettier
L'intégration de Prettier (formateur de code) est également automatique.
- Détecte
.prettierrc. - Permet de reformater le code (
Ctrl+Alt+L) en utilisant les rĂšgles de Prettier. - Permet de configurer "Reformat on Save".
Intentions (Alt + Entrée)
C'est la "baguette magique" (comme dans tous les IDE JetBrains).
Exemples JS/TS :
- Import : Si vous tapez
useState(React),Alt+Entréeproposera "Import 'useState' from 'react'". - Correction : "Fix ESLint problem".
- Refactor : "Convert to async function".
- Types : "Add type annotation" (TS).
Support TypeScript
WebStorm inclut un service TypeScript intégré, qui lit votre tsconfig.json.
Il fournit :
- Auto-complétion basée sur les types (interfaces, classes).
- Erreurs de type (soulignées) en temps réel, sans avoir à lancer
tsc. - Refactoring intelligent (ex: Renommer un champ d'interface met à jour toutes les implémentations).
Alt+Entréepour "Add missing import" ou "Implement interface".
C'est la raison principale de choisir WebStorm plutĂŽt que VS Code. Le refactoring est "safe" car WebStorm comprend la structure du code grĂące Ă son indexation.
| Raccourci | Action | Description |
|---|---|---|
Shift + F6 | Rename | Renomme l'élément (variable, fonction, classe, fichier) ET met à jour tous les imports (import ... from './old-name') dans tout le projet. |
Ctrl + Alt + M | Extract Method/Function | Sélectionne un bloc de code et le transforme en une nouvelle fonction. |
(Alt+Entrée) | Extract Component | (React/Vue) Sélectionne du JSX/Template et le transforme en un nouveau fichier composant (en passant les props). |
Ctrl + Alt + V | Extract Variable | Extrait une expression dans une variable (const). |
F6 | Move | Déplace un fichier (.ts, .js) et met à jour tous les chemins d'import qui pointaient vers lui. |
Les "Run Configurations" (en haut à droite) sont des profils sauvegardés pour lancer ou déboguer des tùches. WebStorm les crée souvent automatiquement.
Types de Configurations Courantes
- Node.js : Exécute un fichier
.jsavec Node (ex:node mon_script.js). - npm : Exécute un script de
package.json(ex:npm start). WebStorm détecte automatiquement les scripts"dev","start","test". - Jest / Vitest : Exécute le "Test Runner" sur vos fichiers de test.
- JavaScript Debug : (Pour le client) Lance un serveur et ouvre Chrome en mode debug.
Le débogage de Node.js est "zéro-config".
Workflow
- Créez une configuration "Node.js" (ou "npm" pour
npm start). - Posez un breakpoint (point rouge) dans la marge.
- Cliquez sur l'icĂŽne "Insecte" (Debug đ) au lieu de "Play" (Run).
Stepping (Navigation pas-Ă -pas)
Une fois arrĂȘtĂ© sur un breakpoint, la fenĂȘtre "Debug" (Alt+5) s'ouvre :
F8(Step Over) : Exécute la ligne (sans entrer dans les fonctions).F7(Step Into) : Entre dans la fonction.Shift + F8(Step Out) : Sort de la fonction.- Variables : Affiche l'état de toutes les variables (locales, globales, closures).
- Console : REPL interactif dans le contexte du breakpoint.
WebStorm peut se connecter au débogueur du navigateur (Chrome, Firefox) pour vous permettre de déboguer le code front-end (React, Vue) directement dans l'IDE.
Workflow (Exemple avec Create React App)
- WebStorm détecte
npm startet crée une configuration "npm". - Créez une configuration "JavaScript Debug".
- URL : Mettez
http://localhost:3000(l'URL de votre app). - Lancez d'abord "npm start" (Run).
- Lancez ensuite "JavaScript Debug" (Debug).
Désormais, un breakpoint posé dans votre code React (JSX) dans WebStorm mettra l'application en pause dans Chrome, et vous pourrez voir les variables et le "Call Stack" dans l'IDE.
Le support de React (et JSX/TSX) est une fonctionnalité centrale de WebStorm.
- Compréhension du JSX : Auto-complétion des composants (ex:
<MyComp...), des props, et des attributs HTML. - Hooks : Compréhension des rÚgles des Hooks (ex: alerte si
useStateest dans unif). - Refactoring (
Alt+Entrée) :- "Extract Component" : Sélectionne du JSX et crée un nouveau fichier
.jsx. - "Add import" pour les composants.
- "Extract Component" : Sélectionne du JSX et crée un nouveau fichier
- Navigation (
Ctrl+B) : Saute de l'utilisation d'un composant (<Button />) à sa définition.
WebStorm offre le meilleur support du marché pour Angular (historiquement, Angular est développé avec IntelliJ/WebStorm chez Google).
- Intégration CLI : Outil graphique pour
ng generate,ng serve... - Templates HTML : Compréhension complÚte des templates Angular (
*ngFor,[property],(event)). - Navigation (
Ctrl+B) :- Saute du template
.htmlau champ.ts. - Saute de
templateUrlau fichier.html.
- Saute du template
- Refactoring (
Shift+F6) : Renommer une variable dans le.tsla renomme dans le.html.
WebStorm (via le plugin Volar ou l'intégration native) supporte pleinement Vue.js (2 et 3).
- Support des SFC (
.vue) : Compréhension des blocs<template>,<script setup>, et<style scoped>. - Auto-complétion : Complétion des props, de l'API (
ref,computed). - Navigation :
Ctrl+Bsur un composant dans le template saute Ă son import. - Frameworks : Support pour Nuxt.js, Pinia, Vuex.
L'intĂ©gration VCS (Git) est identique Ă celle d'IntelliJ IDEA. Elle est extrĂȘmement complĂšte et visuelle.
| Raccourci | Action | Description |
|---|---|---|
Ctrl + K | Commit | Ouvre la fenĂȘtre "Commit". Montre les fichiers modifiĂ©s (diff), permet d'Ă©crire le message, de cocher les fichiers. |
Ctrl + Shift + K | Push | Pousse les commits locaux. |
Ctrl + T | Update Project (Pull) | Tire les changements (Pull). Vous pouvez choisir Merge ou Rebase. |
Alt + 9 | Git Tool Window | Ouvre la vue "Git", qui montre l'historique (Log) du projet et des branches. |
Gestion des Branches
En bas à droite, le sélecteur de branche permet de voir la branche actuelle, de créer/changer de branche (Checkout), et de gérer les fusions (Merge) et les conflits visuellement.
WebStorm intĂšgre des "Test Runners" graphiques pour les frameworks de test les plus populaires.
Jest / Vitest
WebStorm détecte les fichiers .test.js ou .spec.ts.
Vous pouvez cliquer sur l'icÎne "Play" (flÚche verte) dans la marge à cÎté d'un describe ou it pour :
- Run : Lancer ce test (ou cette suite).
- Debug : Lancer ce test avec le débogueur attaché.
Une fenĂȘtre de rĂ©sultats (Vert/Rouge) s'ouvre pour voir les Ă©checs.
Cypress & Playwright
WebStorm (via des plugins ou intégrations natives) supporte les tests End-to-End (E2E).
- Auto-complétion des commandes (
cy.get()). - Possibilité de lancer le runner E2E depuis l'IDE.
Les raccourcis sont identiques Ă ceux d'IntelliJ et PyCharm.
Top 10 (Indispensables)
1. Shift + Shift
(Search Everywhere)
2. Alt + Entrée
(Show Intentions / "Baguette Magique")
3. Ctrl + N
(Go to Class - ou Symbole JS)
4. Ctrl + Shift + N
(Go to File)
5. Alt + F7
(Find Usages)
6. Shift + F6
(Rename / Refactor)
7. Ctrl + B
(Go to Definition)
8. F8
(Step Over - Debug)
9. Ctrl + K
(Commit - Git)
10. Ctrl + Espace
(Basic Completion)Ădition & Refactor
Ctrl + W / Ctrl + Shift + W (Extend / Shrink Selection) Ctrl + D (Duplicate Line) Ctrl + Y (Delete Line) Ctrl + / (Comment / Uncomment Line) Ctrl + Alt + L (Reformat Code - Prettier) Ctrl + Alt + O (Optimize Imports)
Navigation & Vues
Alt + 1 (Project View) Alt + 5 (Debug View) Alt + 9 (Git View) Alt + F12 (Terminal) Ctrl + E (Recent Files)
