Mise en place d'un projet
Création du projet
Un projet Angular peut se présenter sous deux structures différentes. Une structure “classique” qui ne comprend qu’un unique projet ou bien un workspace pouvant contenir plusieurs applications ou librairies (aussi appelé “monorepo”)
- Structure ‘classique’
- Workspace vide + application (monorepo)
Info
Si le projet est créé dans un dépôt Git existant, il faut utiliser l’option --skip-git afin de spécifier au CLI d’Angular de ne pas initialiser de dépôt Git.
Il peut aussi être utile de spécifier le package manager à utiliser à l’aide de l’option --package-manager.
Dans des cas plus rares, l’option --new-project-root permet de spécifier le nom du dossier dans lequel les nouvelles applications devront être générées.
Ajout d’ESLint et de Prettier
- Installation d’ESLint
Il est possible d’ajouter facilement ESLint à un projet Angular en executant le schematic fourni :
Cela aura pour effet d’installer les dépendances nécessaires et créer le(s) fichier(s) de configuration associé(s).
- Installation de Prettier
- Commencer par installer la package prettier ainsi que les deux plugins nécessaires à son intégration avec ESLint
- Créer un fichier
.prettierrc.jsonà la racine du projet
- Exemple de configuration ESLint pour workspace multi-projets
Ajout de Stylelint
- Commencer par installer la package stylelint ainsi que sa configuration standard
- Créer un fichier
.stylelintrc.jsonà la racine du projet
Ajout de Commitlint
- Commencer par installer la package commitlint ainsi que sa configuration standard
- Créer un fichier
commitlint.config.jsà la racine du projet
Ajout de Husky
Husky est un outil qui permet de gérer facilement les Hooks Git en exécutant des scripts au format Node.js
- Installation
Il peut s’installer de manière automatique grâce au script d’initialisation
Mais aussi de manière manuelle en exécutant une suite de commandes :
- Création de hooks
Il est nécessaire des hooks afin d’exécuter les linters, les tests au commit et/ou au push.
Pour ajouter une commande à un hook ou en créer un nouveau, utiliser la commande husky add <file> [cmd]
Ajout de Storybook
Storybook est un outil qui peut s’avérer très utile pour visualiser et tester ses composants en isolation. Il s’installe très facilement en exécutant le script d’init :