… Et le framework backend ?
Comme décrit plus haut, on privilégie un monolithe (à l'ancienne 👵). Nous préconisons Next.js côté backend afin d'avoir une intégration native avec React. Essayez de partir avec au minimum Next.js v13 en configurant le router avec "appDir".
Cette version utilise React v18 qui introduit les RSC (React Server Component), permettant le rendu HTML directement sur le serveur sans recalculer les composants depuis le frontend. Vous connaissez peut-être de longue date le SSR (server-side rendering) avec React, si vous voulez connaître la différence exacte avec les RSC, lisez ça.
Avant, React était surtout connu pour être fourni en SPA (Single Page Application), mais cela rend le SEO pauvre et votre application n'était pas très bien référencée sur les moteurs de recherche. Là, les RSC apportent un nouveau souffle (bien mieux que faire du React SSR). Et si vous les codez bien, ils peuvent être compatibles pour un rendu sur serveur tout autant que sur frontend (ce qui facilite la réutilisation entre différents outils).
Les avantages avec les RSC :
- Meilleur SEO ;
- Écoconception (il n'y a plus d'hydratation des composants côté frontend) ;
- Rapidité du rendu de la page avec son chargement (valable aussi en développement).