Le fix repose sur CC_BUILD_COMMAND="npm install --ignore-scripts && npm run build" côté Clever Cloud, qui empêche le postinstall de sharp de planter. Plus besoin de forcer sharp en devDependency explicite.
Les binaires précompilés de sharp (@img/sharp-linux-x64 et @img/sharp-libvips-linux-x64) étaient en optionalDependencies, ce qui faisait qu'ils n'étaient pas installés sur Clever Cloud. En les ajoutant explicitement, npm les installe obligatoirement.
sharp était uniquement en optionalDependency d'Astro, ce qui faisait
qu'il n'était pas installé sur Clever Cloud. Le build échouait avec
"Rollup failed to resolve import sharp".
- Mise à jour astro@5.17, @astrojs/tailwind@6, @astrojs/check
- Remplacement des content collections legacy par des loaders glob()
- Déplacement src/content/config.ts → src/content.config.ts
- entry.slug → entry.id, entry.render() → render(entry)
- Ajout de generateId personnalisé pour préserver les points dans les IDs des fichiers multilingues (.en, .ar)
Galerie photo :
- Ajout du layout photo avec slideshow plein écran
- Navigation par catégories (portraits, paysages, nature, etc.)
- Section "Fil Photo" avec posts illustrés (photoBlogPosts)
- Lightbox pour les albums de catégories
- Composants : Slideshow, CategoryNav, CategoryGrid, Lightbox, MasonryGallery
Nettoyage :
- Suppression du contenu démo du template (posts, images, about)
- Consolidation src/collections/ dans src/data/
- Suppression du config.js dupliqué (garde config.ts)
- Nettoyage des assets inutilisés (posts/, experiences/)
Corrections :
- Favicon récupéré du site actuel
- Chemins favicon corrigés dans les layouts
UI :
- Page d'accueil mise à jour
- Header/Footer simplifiés
- Nouvelle page À propos