Séance 2 : Introduction à Nuxt 4 & Fondations
🎯 Objectifs de la séance
Comprendre la valeur ajoutée d'un meta-framework fullstack comme Nuxt 4 par rapport à une Single Page Application (SPA) Vue 3 classique.
Maîtriser les 5 modes de rendu du web moderne (CSR, SSR, SSG, ISR/SWR, Edge) et savoir choisir le bon mode selon les contraintes métier et SEO.
Découvrir la nouvelle architecture standardisée de Nuxt 4 avec le répertoire central
app/.Comprendre le mécanisme des Auto-Imports de Nuxt et ses conventions.
Atelier Fil rouge DevFlow : Initialiser le projet
devflowavec Nuxt 4, TypeScript en mode strict et configuration de base.
🚀 1. Qu'est-ce que Nuxt 4 ?
Vue 3 est une excellente bibliothèque pour construire des interfaces utilisateur réactives côté client. Cependant, pour une application d'envergure professionnelle, vous devez configurer manuellement :
Le routeur (
vue-router) et la gestion des URL.Le rendu côté serveur (SSR) pour le SEO et le premier affichage rapide (First Contentful Paint).
La compilation et l'optimisation des assets (Vite).
Les routes d'API serveur et l'authentification sécurisée.
Nuxt 4 est un meta-framework fullstack basé sur Vue 3. Il apporte une structure conventionnelle, une couche serveur unifiée grâce au moteur Nitro, et automatise l'ensemble des tâches répétitives.
┌────────────────────────────────────────────────────────────┐
│ Nuxt 4 │
├──────────────────────────────┬─────────────────────────────┤
│ Client (Vue 3 + Vite) │ Serveur (Moteur Nitro) │
│ - Composition API & TS │ - Endpoints API server/ │
│ - Auto-imports de composants│ - Middlewares serveur │
│ - Routage par fichiers │ - Rendu SSR ultra-rapide │
│ - Layouts et Transitions │ - Déploiement serverless │
└──────────────────────────────┴─────────────────────────────┘📊 2. Les Modes de Rendu dans le Web Moderne
Le choix du mode de rendu a un impact direct sur la performance, les coûts d'hébergement, la fraîcheur des données et le référencement naturel (SEO).
Tableau comparatif exhaustif
CSR (Client-Side Rendering)
Le serveur renvoie un HTML minimal et le bundle JS. Le navigateur construit tout le DOM.
Navigation instantanée après chargement, coût serveur quasi nul.
Premier affichage plus lent (blank page), SEO complexe sans pré-rendu.
Dashboards privés, back-offices, SaaS authentifiés (ex: Trello, Jira).
SSR (Server-Side Rendering)
À chaque requête, le serveur génère le HTML complet à la volée. Vue prend le relais via l'hydratation.
Excellent SEO, contenu immédiatement visible, métadonnées dynamiques.
Charge CPU sur le serveur, temps de réponse (TTFB) dépendant de la base de données.
E-commerce, sites d'actualités, réseaux sociaux, plateformes d'offres.
SSG (Static Site Generation)
Le HTML de toutes les pages est pré-généré au moment du build (nuxi generate).
Vitesse maximale sur CDN mondial, sécurité absolue, zéro charge serveur.
Nécessite un rebuild complet pour mettre à jour le contenu.
Documentation, sites vitrines, blogs, supports de cours GitBook.
ISR / SWR (Incremental Static / Stale-While-Revalidate)
Pages statiques régénérées périodiquement en tâche de fond après expiration d'un cache.
Performances du statique tout en gardant des données fraîches.
Complexité de cache et léger décalage de fraîcheur de données.
Catalogues de 50 000 produits, portails d'annonces immobilières.
Edge Rendering
Le code SSR s'exécute sur des serveurs distribués au plus près géographique de l'utilisateur (CDN Edge).
Latence réseau minimale (< 20 ms) pour une audience mondiale.
Environnement d'exécution restreint (V8 isolates sans Node.js complet).
Applications SaaS internationales, plateformes de streaming mondiales.
La force de Nuxt 4 : Vous pouvez configurer des modes de rendu différents pour chaque route de votre application grâce à l'option routeRules dans nuxt.config.ts (Rendu Hybride).
📁 3. Nouvelle structure de dossiers Nuxt 4 : Le dossier app/
Dans Nuxt 4, pour séparer proprement le code front-end du code serveur Nitro et de la configuration racine, l'ensemble du code applicatif Vue est regroupé dans le dossier app/.
⚡ 4. Le Système des Auto-Imports
Nuxt 4 auto-importe automatiquement les fonctions et composants essentiels. Vous n'avez plus besoin d'écrire des dizaines de lignes d'imports au début de chaque fichier.
Ce qui est auto-importé par défaut :
Les primitives Vue 3 :
ref,reactive,computed,watch,onMounted,nextTick, etc.Les utilitaires Nuxt :
useRoute,useRouter,useFetch,useAsyncData,navigateTo,useHead,useSeoMeta.Tous les composants placés dans
app/components/.Tous les composables placés dans
app/composables/.Tous les utilitaires placés dans
app/utils/.
🛠️ 5. Atelier Pratique : Lancement du Fil Rouge "DevFlow"
Votre mission chez DevSquad :
Initialiser le projet Nuxt 4 avec la commande officielle
nuxi init devflow.Configurer
nuxt.config.ts:Activer le typage strict (
typescript: { strict: true, typeCheck: true }).Configurer les métadonnées HTML de base, de manière globale, (
title,description,lang: 'fr').Activer les DevTools Nuxt.
Créer l'arborescence
app/et configurerapp/app.vueavec<NuxtLayout>et<NuxtPage />.Lancer le serveur de développement (
npm run dev) et explorer l'interface des Nuxt DevTools (Shift + Alt + D).
🎯 Auto-évaluation & Checklist
Last updated