BOVO Digital
BOVO Digital
Développement Web10 min de lecture

Partial Pre-Rendering (PPR) dans Next.js : Le Guide Complet

Le PPR combine le meilleur du statique et du dynamique. Avec la directive use cache, Next.js révolutionne le rendu web. Guide technique avec exemples.

Partial Pre-Rendering (PPR) dans Next.js : Le Guide Complet

Partial Pre-Rendering (PPR) dans Next.js : Le Guide Complet

Le Partial Pre-Rendering (PPR) est la fonctionnalité la plus excitante de Next.js depuis les Server Components. Avec la nouvelle directive use cache, le framework de Vercel résout enfin le dilemme : statique ou dynamique ?

La réponse en 2026 : les deux, sur la même page.

Quel problème de performance le Partial Pre-Rendering résout-il ?

Imaginez une page e-commerce :

ÉlémentNatureBesoin
Header / LogoStatiqueIdentique pour tous
Fiche produitSemi-dynamiqueChange rarement
PrixDynamiqueTemps réel
PanierTrès dynamiqueUnique par utilisateur

Avant PPR : il fallait choisir SSG, SSR ou ISR. Avec PPR, chaque élément est rendu de manière optimale.

Comment Fonctionne le PPR

  1. Build time : pré-rendu des parties statiques
  2. Edge : shell statique servi depuis le CDN
  3. Streaming : parties dynamiques streamées en parallèle

La Directive use cache

async function ProductInfo({ id }: { id: string }) {
  "use cache";
  const product = await db.product.findUnique({ where: { id } });
  return <div>{product.name} - {product.description}</div>;
}

async function LivePrice({ id }: { id: string }) {
  const price = await fetchLivePrice(id);
  return <span>{price} EUR</span>;
}

export default async function ProductPage({ params }) {
  return (
    <div>
      <Suspense fallback={<ProductSkeleton />}>
        <ProductInfo id={params.id} />
      </Suspense>
      <Suspense fallback={<PriceSkeleton />}>
        <LivePrice id={params.id} />
      </Suspense>
    </div>
  );
}

PPR vs ISR vs SSR : quelle stratégie de rendu choisir pour Next.js ?

CritèreSSRISRPPR
VitesseMoyenRapideUltra-rapide
FraîcheurTemps réelDélaiTemps réel (dynamique)
Charge serveurHauteMoyenneBasse

Migration

Étape 1 : Activer PPR

const nextConfig = {
  experimental: { ppr: true },
};

Étape 2 : Classifier vos composants

  • Statiquesuse cache longue durée
  • Semi-dynamiquesuse cache avec revalidation
  • Dynamiques → pas de cache

Étape 3 : Wrappez avec Suspense

Chaque composant cacheable dans un <Suspense> avec fallback.

Impact Core Web Vitals

MétriqueAvant PPRAprès PPR
LCP2.5s0.8s
FID100ms40ms
CLS0.150.02

Conclusion

Le PPR est un changement de paradigme : le meilleur des deux mondes sans compromis. Pour comprendre le contexte complet de Next.js 16, lisez notre article d'introduction à Next.js 16 et React 19, et pour les dernières évolutions incluant l'Adapter API, consultez Next.js 16.2 Agent-Ready.


Besoin d'aide pour migrer vers le PPR ? Chez BOVO Digital, nous optimisons vos performances web avec les dernières technologies Next.js.

Étiquettes

#Next.js#PPR#Performance#React#use cache#Server Components#Web Vitals

Passez à l'action avec BOVO Digital

Cet article vous a donné des idées ? Nos experts vous accompagnent de la stratégie à la mise en production.