Conversion automatique des images
Activez la conversion automatique PNG/JPG vers WebP dans Jamdesk : images plus légères et pages plus rapides, sans traitement manuel.
Jamdesk peut convertir les images PNG et JPG au format WebP pendant les builds. Les fichiers WebP sont généralement 60 à 80 % plus légers que les originaux, sans perte de qualité visible, ce qui accélère le chargement de vos pages sans aucun traitement d'image manuel.
Cette fonctionnalité est désactivée par défaut. Activez-la dans votre docs.json.
Activer la fonctionnalité
Ajoutez le champ images.convertToWebp à votre docs.json :
{
"images": {
"convertToWebp": true
}
}C'est le seul interrupteur. La page Réglages du dashboard affiche l'état actuel sous Points clés de configuration, mais elle ne propose pas son propre interrupteur. docs.json est la source de vérité.
Ce qui est converti
| Source | Converti ? |
|---|---|
| PNG | Oui |
| JPG / JPEG | Oui |
| SVG | Non (déjà vectoriel) |
| GIF | Non (l'animation serait perdue) |
| ICO | Non (trop petit pour que ça compte) |
| WebP | Non (déjà optimisé) |
Les images converties conservent leur nom de base et reçoivent l'extension .webp. Chaque référence dans votre MDX, votre CSS personnalisé, votre JS personnalisé et votre docs.json est réécrite automatiquement. Vous n'avez aucun chemin à modifier.
Ce qui reste dans son format d'origine
Certaines images restent inchangées même lorsque la conversion est activée.
Favicons. Tous les navigateurs et clients de messagerie ne prennent pas correctement en charge les favicons WebP.
Les images de réseaux sociaux (og:image et twitter:image dans votre seo.metatags) conservent elles aussi leur format d'origine. Les robots des réseaux sociaux comme Facebook, LinkedIn, WhatsApp et les anciennes versions de Twitter/X ne prennent pas tous en charge le WebP, et une carte d'aperçu cassée est pire qu'un JPG légèrement plus lourd.
Les images inutilisées sont également épargnées. Si un fichier se trouve dans votre répertoire /images mais que rien dans votre MDX ou votre configuration ne le référence, l'original est quand même téléversé sur le CDN, mais il n'est pas converti. Inutile de consommer du CPU pour quelque chose que rien ne référence.
Les images qui ne bénéficieraient pas de la conversion restent inchangées. Si le fichier WebP obtenu serait plus volumineux que le fichier source (ce qui est courant avec les JPG déjà compressés et les très petites images PNG), Jamdesk conserve l'original. Elles apparaissent comme skipped dans les statistiques de build.
Une chose qui est convertie : background.image. C'est un arrière-plan plein écran affiché par le navigateur, qui profite donc du WebP comme n'importe quelle autre image.
Indicateur de progression du build
Lorsque la fonctionnalité est activée, votre build affiche une étape Optimisation des images dans la liste de progression du dashboard, entre « Génération de la documentation » et « Envoi vers le CDN ». Le CLI jamdesk deploy affiche la même étape dans sa sortie de progression en terminal. Lorsque la fonctionnalité est désactivée, l'étape n'apparaît pas du tout.
Mise en cache du build
Jamdesk stocke un hash de chaque image source dans le manifeste de build. Si un fichier n'a pas changé depuis le dernier build, la conversion est ignorée et le WebP mis en cache est réutilisé. Les temps de rebuild restent rapides même avec des centaines d'images.
Gestion des échecs
Si la conversion échoue pour une image (fichier corrompu, dépassement de mémoire, format inattendu), l'original est conservé et le reste du build continue. Votre documentation ne sera pas cassée par une erreur de conversion d'image.
Logs de build
En plus de l'indicateur du dashboard, vos logs de build incluent une ligne comme celle-ci :
Optimizing images... done (4 converted, 2 cached, 1 skipped, 0 failed, saved 1.2 MB)
| Field | Meaning |
|---|---|
| converted | Images converties de PNG/JPG vers WebP lors de ce build |
| cached | Images inchangées reprises du build précédent |
| skipped | Images laissées dans leur format d'origine (champs protégés, fichiers inutilisés ou formats ne nécessitant pas de conversion) |
| failed | Conversions ayant échoué (originaux conservés) |
| saved | Total d'octets économisés sur l'ensemble des images converties |
