React, Vue, Svelte, Astro ou Next.js, avec la même app

Comparatif des frameworks frontend

React, Vue, Svelte, Astro ou Next.js : la même app, mesurée | We.Inc

React, Vue, Svelte, Astro et Next.js comparés avec la même todo app dans chacun, des tailles de JavaScript mesurées, un tableau de choix par type de projet, des notes sur la courbe d'apprentissage et un encadré Vite vs webpack.

Choisissez selon le projet, pas selon la popularité. Astro convient aux sites de contenu, car les pages sont envoyées en HTML avec peu ou pas de JavaScript. Next.js, basé sur React, convient aux applications web complètes. Vue est le plus simple à apprendre, et Svelte envoie le moins de code. Nous avons construit la même todo app dans chacun : Svelte a envoyé 13.8 KB gzippés, Vue 25.8 KB et React 68 KB.

En une ligne chacun

Les avis sont faciles à trouver ; les mesures d'une même application, beaucoup moins. Nous avons écrit une petite todo app en React, Vue, Svelte et JavaScript pur, construit chacune avec Vite, testé chacune en cliquant dans un navigateur et mesuré ce qu'elle envoie. Astro et Next.js sont présentés avec le même composant en place.

Questions fréquentes

Next.js, est-ce la même chose que React ?

Non. React est la bibliothèque d'interface ; Next.js est un framework basé sur React qui ajoute le routage, le rendu serveur, les Server Components, le chargement de données et une configuration de build. Vous écrivez des composants React dans Next.js.

Astro ou Next.js pour un site web ?

Pour les sites centrés sur le contenu comme les pages marketing, les blogs et la documentation, Astro envoie généralement moins de JavaScript et reste plus simple. Pour les sites proches d'une application, avec connexions, tableaux de bord et beaucoup d'interaction, Next.js convient mieux.

Vue est-il plus facile que React ?

Beaucoup trouvent qu'il est plus simple pour débuter, car les templates ressemblent à du HTML et la réactivité ne demande pas de mises à jour immuables. React demande d'abord d'apprendre JSX et les règles des hooks, mais offre plus de bibliothèques et d'offres d'emploi.

Pourquoi le bundle de Svelte est-il si petit ?

Svelte compile les composants en code de mise à jour du DOM au moment du build, il envoie donc un petit runtime au lieu d'un moteur de rendu générique.

Faut-il utiliser Vite ou webpack ?

Pour un nouveau projet, Vite : il démarre vite et demande peu de configuration. webpack reste pertinent dans les projets existants qui reposent sur ses plugins.

La courbe d'apprentissage, honnêtement

Hébergement

Ce que chacun envoie

Construit avec Vite en mode production ; chaque build a été testé dans un navigateur. Astro et Next.js ne faisaient pas partie de cette mesure.

Mesuré : la même todo app, total du JavaScript envoyé

Lequel choisir

Tableau de choix par type de projet

Comment ils se comparent

En un coup d'œil

La même application, de cinq façons

React

Le state vit dans les hooks ; chaque changement relance le composant et React applique les différences au DOM. Les mises à jour doivent créer de nouveaux tableaux et objets.

Vue

Script, template et (en option) styles dans un seul fichier. v-model lie les champs dans les deux sens et les refs sont réactives, il suffit donc d'ajouter un élément au tableau.

Svelte 5

Les runes ($state, $derived) marquent les valeurs réactives, et le compilateur transforme le composant en mises à jour directes du DOM, d'où un runtime léger.

JavaScript pur

La référence. Convient pour un petit widget, mais vous écrivez vous-même les mises à jour du DOM et les gardez synchronisées avec les données à la main.

Astro : la même application en île

Astro rend la page en HTML et n'hydrate que les composants dotés d'une directive client. Ici, la todo app Svelte charge son JavaScript quand elle arrive à l'écran ; le reste de la page n'en envoie aucun.

Next.js : où va le même composant

Dans l'App Router, la page est un Server Component, la todo list interactive va donc dans son propre fichier marqué "use client". La page qui l'entoure n'envoie aucun JavaScript de composant.

Encadré : Vite vs webpack

Vite vs webpack

Vous créez un site de contenu ? Voyez aussi

les générateurs de sites statiques

Commencer gratuitement · Sans carte bancaire

Voir aussi: Guides

Produit

Pour qui

Fonctionnalités

Ressources

Entreprise

Plan du site