Dans le monde du développement web, les frameworks JavaScript pour sites statiques ont bien évolué. À la base, un site statique, c’est un ensemble de fichiers HTML/CSS/JS générés à l’avance, sans code exécuté côté serveur à chaque visite. Résultat : des performances excellentes, surtout pour les blogs, portfolios, documentations…
Aujourd’hui, les outils se multiplient et deviennent de plus en plus puissants. Voici un petit résumé rapide des solutions actuelles, avec un focus final sur Astro, que j’utilise moi-même dans un de mes projets majeurs.
Next.js (en mode Static Generation)
Next.js est un framework basé sur React, souvent utilisé pour faire du SSR (Server-Side Rendering), c’est-à-dire que les pages sont générées à chaque requête côté serveur. Mais il propose aussi du SSG (Static Site Generation), où les pages sont pré-générées au moment du build, prêtes à être servies sans recalcul.
Avantages :
-
Très mature, grosse communauté
-
S’intègre parfaitement avec Vercel (la plateforme de déploiement officielle)
-
Permet le ISR (Incremental Static Regeneration) : on régénère certaines pages à la volée sans rebuild complet
Limites :
-
Plutôt lourd pour un simple blog ou portfolio
-
Temps de build qui peut vite grimper si t’as beaucoup de pages
Nuxt.js
Similaire à Vue.js. Nuxt permet aussi plusieurs modes de rendu : SSR, SSG, ou SPA (Single Page Application, appli 100% côté client). En activant le mode target: ‘static’, on arrive en génération statique.
Avantages :
-
Structure claire, bonne DX (Developer Experience, confortable)
-
Routing automatique, intégration Vuex, etc.
-
Très bonne pour des blogs Vue ou petits sites e-commerce
Limites :
-
Moins rapide que certains frameworks ultra légers
-
Quelques bugs encore sur la v3 (en 2025 ça va mieux, mais faut faire gaffe aux modules)
Eleventy (11ty)
11ty est un générateur de site statique très léger, sans framework front imposé. C’est plus proche du “web à l’ancienne” mais avec de la modernité. Pas de React, pas de Vue, juste du HTML/CSS/JS compilé vite et proprement.
Avantages :
-
Ultra rapide
-
T’as le contrôle complet sur le rendu final
-
Pas de JS côté client par défaut → parfait pour les performances
Limites :
-
Pas de composants dynamiques (sauf avec bidouille)
-
Moins friendly
Et Astro dans tout ça ?
Astro, c’est un de mes gros coups de cœur de 2025. Il part du principe : “Pourquoi envoyer du JavaScript si on peut l’éviter ?” Par défaut, Astro ne charge aucun JavaScript côté client. Les pages sont rendues à 100% statiquement, mais il est aussi possible d’importer des composants React, Vue, Svelte, Solid… Astro ne garde que ce qui est strictement nécessaire, avec une stratégie appelée island architecture : seuls les morceaux interactifs reçoivent du JS.
Je l’utilise personnellement dans un de mes projets les plus costauds, et j’adore : composants .astro ultra simples, Markdown intégré, hot-reload rapide, et des performances de fou.
Avantages :
-
Pas de JS inutile → site plus rapide
-
Markdown intégré nativement
-
Support multi-framework (React, Vue, etc.)
-
Parfait pour les blogs, landing pages, portefolios modernes
Limites :
-
Encore jeune, donc certaines libs JS sont pas 100% compatibles
-
Nécessite un petit temps d’adaptation au début
En résumé
Framework | Stack principale | JavaScript côté client ? | Idéal pour… |
---|---|---|---|
Next.js | React | Oui | Sites dynamiques, apps mixtes |
Nuxt.js | Vue | Oui | Blogs Vue, sites e-commerce |
11ty | Aucune (HTML pur) | Non | Blogs simples, docs |
Astro | Multi (React, Vue…) | Non (par défaut) | Sites modernes, très optimisés |
Conclusion
Les frameworks statiques modernes ne se limitent plus à juste générer du HTML. Ils s’adaptent aux besoins : performance, interactivité, modularité. Et franchement, pour un site rapide, moderne, et propre… Astro est clairement un outil à surveiller (et à utiliser).