metalint v0.16.0
Metalint
Un linter pour les gouverner tous.
Description
Metalint est un outil pour analyser tous les fichiers de votre projet. L'analyse est déléguée à des linters (outils d'analyse statique de code source) :
Installation
Vous pouvez installer Metalint en utilisant npm :
npm install --save-dev --save-exact metalint
Configuration
Tous les fichiers de configuration sont à regrouper dans le répertoire
.metalint/
qui doit être placé à la racine du projet. Le fichier
metalint.config.js
export un objet JSON indiquant les linters à utiliser pour
chaque fichier. Les autres fichiers contiennent les options spécifiques pour les
linters.
Exemple
Dans cet exemple des fichiers de configuration, Metalint analyse les fichiers JavaScript (non-minifiés), HTML et CSS ; avec respectivement les linters ESLint, HTMLHint et Stylelint.
// .metalint/metalint.config.js
export default {
patterns: ["**", "!/.git/**", "!/node_modules/**"],
checkers: [
{
patterns: ["*.js", "!*.min.js"],
linters: "eslint",
}, {
patterns: "*.html",
linters: "htmlhint",
}, {
patterns: "*.css",
linters: "stylelint",
},
],
};
// .metalint/eslint.config.js
export default {
rules: {
quotes: ["error", "double"],
semi: ["error", "always"],
},
};
// .metalint/htmlhint.config.js
export default {
"attr-value-not-empty": false,
};
// .metalint/stylelint.config.js
export default {
rules: {
"color-no-invalid-hex": true,
},
};
Intégration
npm
Après avoir installé Metalint et les linters dans votre projet npm, vous pouvez
ajouter le script suivant dans votre package.json
:
{
"scripts": {
"lint": "metalint"
}
}
Metalint est maintenant utilisable avec la commande : npm run lint
GitHub Actions
Pour lancer Metalint dans vos GitHub Actions, vous pouvez utiliser le formateur
github
pour rapporter les problèmes dans les pull requests.
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/setup-node@v4
- uses: actions/checkout@v4
with:
persist-credentials: false
- name: Install dependencies
run: npm ci
- name: Lint files
run: npm run lint -- --formatter github
1 month ago
4 months ago
8 months ago
10 months ago
1 year ago
1 year ago
1 year ago
2 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
8 years ago
9 years ago