Un nom ancien, une grande taille ou l’absence de référence textuelle ne suffisent pas. Une image peut être appelée par une clé de catalogue, une police par une feuille CSS et un fichier JSON par une fonction partagée. Le nettoyage part des usages et conserve une possibilité de restauration. Il porte sur un périmètre de fichiers explicite, sans modifier les secrets, accès ou configurations sensibles.
Classer les usages
Séparer routes publiques, code partagé, données, médias servis, sources de production et sorties temporaires. Relever nombre de fichiers et octets par groupe. Une fiche publique intitulée audit reste un contenu du site ; un rapport de test local peut être un artefact. La fonction du fichier prime sur son nom.
Tracer les dépendances
Inspecter inclusions, imports, URL CSS, scripts, métadonnées et manifestes. Reconstituer les noms assemblés dynamiquement : clé de page, langue, suffixe d’image ou identifiant de fiche. Tester les variantes, pages d’erreur et états vides. Une liste de références doit couvrir les ressources sociales et les exports, pas seulement les images visibles.
Définir les candidats
Pour chaque fichier, noter emplacement, taille, motif, références recherchées et dépendances possibles. Comparer un original avec ses variantes optimisées : l’original peut rester utile à la fabrication même s’il n’est pas servi. Définir ce qui doit rester dans le projet et ce qui peut être conservé séparément avant toute suppression.
Préparer une reprise
Conserver une copie restaurable des seuls éléments concernés dans un espace adapté, hors du répertoire public. Identifier la version du site associée. Un fichier ignoré par Git n’est pas automatiquement sauvegardé ni exclu du déploiement ; vérifier séparément suivi de version, paquet publié et archive de restauration.
Retirer par lots
Commencer par les artefacts identifiés, puis les bibliothèques remplacées et les médias dont les dépendances sont établies. Vérifier le chemin absolu et rester dans le périmètre annoncé. Après chaque lot, comparer les mêmes tâches. Ne pas supprimer des données ou fichiers de sécurité simplement parce qu’ils ne sont pas publics.
Contrôler le résultat
Rejouer routes et langues, recherche, filtres, outils, formulaires et erreurs. Vérifier srcset, préchargements, CSS et ressources chargées après interaction. Comparer les octets du projet avant et après. La taille retirée du disque n’est pas nécessairement un gain de transfert : un fichier déjà inutilisé n’était pas chargé par le navigateur.