CLI tool for web ecoconception analysis based on GreenIT best practices. Validates W3C compliance, cache headers, and other performance optimizations.
npm install nceco-cliUn outil CLI pour l'analyse d'écoconception web basé sur les bonnes pratiques GreenIT.
``bash`
npm install -g nceco-cli
bash
eco https://example.com
`$3
`bash
eco --config eco-config.json
`$3
`json
{
"urls": [
"https://example.com",
"https://example.org"
],
"options": {
"ignoreViteHashedFiles": true,
"skipW3cValidation": false,
"w3cValidation": {
"tolerant": true,
"maxErrors": 5
},
"cacheHeaders": {
"ignorePatterns": [
"\\.(js|css|png|jpg|jpeg|gif|svg|woff|woff2|ttf|eot)$"
]
}
}
}
`🔧 Tests disponibles
$3
- ✅ RWEB_0009 - Limiter le nombre de requêtes HTTP
- ✅ RWEB_0101 - Ajouter des en-têtes Expires ou Cache-Control
- ✅ RWEB_0077 - Minifier les fichiers CSS et JavaScript
- ✅ RWEB_0099 - Utiliser un cache HTTP
- ✅ RWEB_0010 - Stocker les données statiques localement
- ✅ RWEB_0011 - Avoir un titre de page et une metadescription pertinents
- ✅ RWEB_0019 - Remplacer les boutons officiels de partage des réseaux sociaux
- ✅ RWEB_0027 - Fournir une CSS print
- ✅ RWEB_0029 - Favoriser les polices standards
- ✅ RWEB_0031 - Valider les pages auprès du W3C
- ✅ RWEB_0032 - Externaliser les CSS et JavaScript
- ✅ RWEB_0034 - Dimensionner correctement les images côté navigateur
- ✅ RWEB_0037 - Utiliser le chargement paresseux
- ✅ RWEB_0078 - Compresser les fichiers texte
- ✅ RWEB_0079 - Combiner les fichiers CSS et JavaScript
- ✅ RWEB_0080 - Optimiser les images
- ✅ RWEB_0082 - Optimiser la taille des cookies
- ✅ RWEB_0095 - Éviter les redirections
- ✅ RWEB_0107 - Compresser les documents
- ✅ RWEB_4006 - Privilégier HTTP/2 à HTTP/1
- ✅ RWEB_4007 - Économiser la bande passante grâce aux service workers
- ✅ RWEB_4008 - Mettre en place un sitemap efficient⚙️ Configuration
$3
`json
{
"w3cValidation": {
"tolerant": true, // Mode tolérant activé
"maxErrors": 5 // Maximum 5 erreurs acceptées
}
}
`$3
`json
{
"ignoreViteHashedFiles": true, // Ignorer les fichiers Vite avec hash
"cacheHeaders": {
"ignorePatterns": [
"\\.(js|css|png|jpg|jpeg|gif|svg|woff|woff2|ttf|eot)$"
]
}
}
`🆕 Nouveautés v1.1.0
- ✅ Validation W3C améliorée : Validation directe du HTML pour URLs locales et publiques
- ✅ Support Vite : Détection automatique des fichiers avec hash
- ✅ Mode tolérant : Configuration flexible pour les erreurs W3C
- ✅ Meilleure gestion des erreurs : Détails plus précis et robustesse améliorée
- ✅ Configuration étendue : Plus d'options de personnalisation
🔍 Exemple de sortie
`
Analyzing https://example.com..--- Eco-Conception Analysis Report ---
[PASS] Limiter le nombre de requêtes HTTP: Le nombre de requêtes HTTP (15) doit être inférieur ou égal à 40.
[PASS] Ajouter des en-têtes Expires ou Cache-Control: Le nombre de ressources sans en-tête de cache (0) doit être inférieur ou égal à 0.
[PASS] Valider les pages auprès du W3C: The page is valid according to the W3C validator (HTML content validation).
[PASS] External CSS and JavaScript: All CSS and JavaScript are externalized.
[PASS] Cookie Size: No cookies are being set.
[PASS] HTTP/2: The page is served over HTTP/2.
--------------------------------------
``Les contributions sont les bienvenues ! N'hésitez pas à :
1. Fork le projet
2. Créer une branche pour votre fonctionnalité
3. Commiter vos changements
4. Pousser vers la branche
5. Ouvrir une Pull Request
MIT License - voir le fichier LICENSE pour plus de détails.
Basé sur les bonnes pratiques GreenIT pour l'écoconception web.