DevToolPal
FR

Minificateur JavaScript et CSS

Minifiez du JavaScript avec Terser et du CSS avec CSSO pour réduire la taille des fichiers, directement dans votre navigateur.

Traitement local, rien n'est envoyé

Options

Langage

Entrée

0 caractères · 0 B

Sortie

0 caractères · 0 B

À quoi ça sert

La minification supprime tout ce dont un navigateur n’a pas besoin pour exécuter votre code : espaces, retours à la ligne, commentaires et noms longs. Des fichiers plus légers se téléchargent plus vite, ce qui améliore le temps de chargement et les Core Web Vitals, surtout sur réseau mobile.

Cet outil minifie le JavaScript avec Terser, le minificateur utilisé par webpack, Rollup et Vite, et le CSS avec CSSO, qui restructure aussi les feuilles de style : il raccourcit les couleurs (#ffffff en #fff), supprime les unités et valeurs redondantes (0px 0px en 0) et fusionne les règles qui partagent des sélecteurs ou des déclarations.

Mode d’emploi

  1. Collez du code dans le champ Entrée, déposez-y un fichier .js ou .css, ou cliquez sur Exemple.
  2. Choisissez JavaScript ou CSS.
  3. Pour le JavaScript, Raccourcir les noms de variables renomme les variables locales et les paramètres en lettres uniques. Les noms exportés et globaux ne sont jamais modifiés.
  4. Pour le CSS, Fusionner les règles en double combine les règles qui ont les mêmes déclarations.
  5. Copiez le résultat ou téléchargez-le. Les compteurs de taille sous chaque champ indiquent le gain obtenu.

Si le JavaScript contient une erreur de syntaxe, le message d’erreur indique la ligne et la colonne pour y aller directement.

Exemple

// Sum the price of every item
export function cartTotal(items, discountPercent = 0) {
  const subtotal = items.reduce(function (sum, item) {
    return sum + item.price * item.quantity
  }, 0)
  return subtotal * (1 - discountPercent / 100)
}

devient

export function cartTotal(t,r=0){return t.reduce(function(t,r){return t+r.price*r.quantity},0)*(1-r/100)}

Quand l’utiliser

Utilisez-le pour un besoin ponctuel : un extrait pour un CDN, un script inline dans un e-mail HTML, un bookmarklet, ou pour voir jusqu’où une bibliothèque peut maigrir. Dans un vrai projet, votre bundler doit minifier à chaque build pour que le code source reste lisible.

FAQ

› Mon code est-il envoyé quelque part ?

Non. Terser et CSSO s'exécutent dans votre navigateur : votre code source propriétaire ne quitte jamais votre appareil.

› La minification va-t-elle casser mon JavaScript ?

Terser n'applique que des transformations qui préservent le comportement d'un code valide. Le code qui dépend des noms de fonctions ou de variables à l'exécution (par exemple via Function.name) peut être affecté par le raccourcissement des noms ; désactivez alors « Raccourcir les noms de variables ».

› Pourquoi « Fusionner les règles en double » est-il optionnel pour le CSS ?

La fusion déplace des déclarations d'une règle à l'autre. C'est sans risque dans presque toutes les feuilles de style, mais si votre CSS dépend de l'ordre exact de règles de même spécificité, la désactiver garantit l'ordre d'origine.

› Quels commentaires sont conservés ?

Avec « Garder les commentaires de licence » activé, les commentaires qui commencent par /*! ou contiennent @license ou @preserve sont conservés, comme l'exigent la plupart des licences open source. Tous les autres commentaires sont supprimés.