Blog
Sviluppo Web

Next.js vs React puro: quando aggiungere il framework e quando no

Next.js o React puro? La scelta dipende da SEO, routing, team e tipo di applicazione. Guida pratica per scegliere senza seguire la moda tecnologica.

6 minTeam Sydus26 febbraio 2026

Nel 2025 la scena frontend è dominata da Next.js. La maggior parte dei tutorial, delle job description e delle discussioni tech lo dà per scontato come default. Ma questa prevalenza culturale non significa che sia sempre la scelta tecnica giusta.

Capire quando Next.js aggiunge valore reale e quando React puro è sufficiente (o superiore) è una delle competenze più utili per un team che deve fare scelte tecnologiche concrete.

React puro: cos'è e quando funziona

React senza framework è una libreria per costruire interfacce utente. Non gestisce il routing, non fa rendering server-side, non ottimizza le immagini, non ha struttura di cartelle obbligatoria. Sei tu a decidere tutto.

Il setup moderno per React puro non è più Create React App (deprecato), è Vite: un build tool velocissimo che in due comandi ti dà un ambiente di sviluppo con HMR, TypeScript support, e build ottimizzata per produzione.

npm create vite@latest my-app -- --template react-ts

Tutto il rendering avviene nel browser (SPA, Single Page Application). L'HTML iniziale è praticamente vuoto; JavaScript carica i componenti e costruisce il DOM client-side. Questo ha una conseguenza importante: i motori di ricerca vedono una pagina quasi vuota al primo caricamento. Google è migliorato nel renderizzare le SPA, ma rimane meno affidabile dell'HTML server-rendered.

Quando React puro è la scelta giusta

Dashboard e admin panel interni. Un back-office, un gestionale, un portale di reportistica per i dipendenti non ha bisogno di essere indicizzato da Google. Nessun utente arriverà tramite ricerca organica. La SPA con React puro è perfetta: interattiva, veloce dopo il caricamento iniziale, semplice da sviluppare.

Prototipo rapido. Quando devi dimostrare un'idea o costruire un MVP in poco tempo, la semplicità di React puro accelera lo sviluppo. Non devi capire le distinzioni tra Server e Client Components, App Router vs Pages Router, Static vs Dynamic rendering.

Team che non conosce Next.js. Imparare React e Next.js contemporaneamente è fattibile ma aggiunge carico cognitivo. Se il team conosce React ma non Next.js, e l'applicazione non ha bisogni SEO, partire con React puro è più pragmatico.

Applicazioni altamente interattive. Editor di testo ricchi, strumenti di design, applicazioni realtime con molti aggiornamenti UI al secondo: queste applicazioni non beneficiano dell'SSR (che serve principalmente per il caricamento iniziale) e possono essere più semplici da implementare come SPA pure.

Next.js: cosa aggiunge e a quale costo

Next.js è un framework costruito sopra React. Aggiunge una serie di funzionalità opinionated che risolvono problemi comuni dello sviluppo web:

File-based routing. Le pagine corrispondono a file nel filesystem. app/blog/[slug]/page.tsx diventa automaticamente la route /blog/qualsiasi-slug. Non serve configurare React Router manualmente.

SSR (Server Side Rendering). Il componente viene renderizzato sul server e l'HTML viene inviato al browser già popolato con i dati. I motori di ricerca vedono contenuto reale. Il First Contentful Paint è più veloce su connessioni lente.

SSG (Static Site Generation). Le pagine vengono generate al build time e servite come HTML statici. Prestazioni massime, zero latenza server, CDN-friendly. Ideale per blog, documentazione, pagine di prodotto.

ISR (Incremental Static Regeneration). Una via di mezzo: pagine statiche che si rigenerano automaticamente dopo un intervallo di tempo o on-demand. Ottimo per contenuti che cambiano ma non in tempo reale.

API Routes. È possibile creare endpoint API nello stesso progetto Next.js, senza un server separato. Comodo per webhook, form di contatto, proxy verso servizi esterni.

Image Optimization. Il componente <Image> ottimizza automaticamente le immagini: formato WebP/AVIF, lazy loading, placeholder blur, sizing responsivo.

Typescript, ESLint, configurazione zero. Next.js è opinionated su tutto questo e lo configura di default.

Il costo di Next.js

Next.js non è gratuito in termini di complessità:

  • L'App Router (introdotto in Next.js 13, standard ora) ha una distinzione fondamentale tra Server Components (eseguiti solo sul server, non possono usare hooks o eventi browser) e Client Components (prefisso "use client", eseguiti nel browser). Confondere i due produce errori non ovvi.
  • I tempi di build sono più lunghi di una SPA.
  • Il deployment richiede un server Node.js (o una piattaforma compatibile come Vercel). Non è un file statico che puoi caricare su qualsiasi hosting.
  • La curva di apprendimento è più alta: routing, rendering modes, caching layers, c'è molto da capire.

Quando Next.js vale la complessità aggiuntiva

SEO è critica. Siti pubblici, e-commerce, landing page, blog, siti aziendali: tutto ciò che deve essere trovato dai motori di ricerca beneficia dell'SSR/SSG. Il gap di indicizzazione tra HTML server-rendered e SPA JavaScript è ancora reale e significativo.

Performance percepita sul primo caricamento. Con SSR, l'utente vede contenuto reale quasi immediatamente, anche su connessione lenta. Con una SPA, deve aspettare il download del JavaScript bundle e l'esecuzione prima di vedere qualcosa. Per siti pubblici dove la prima impressione conta, questo fa differenza.

Struttura di un team medio-grande. Il file-based routing e le convenzioni di Next.js rendono più facile orientarsi in una codebase grande, con più developer che lavorano in parallelo.

Progetto che mescola pagine pubbliche e aree autenticate. Un sito aziendale con homepage pubblica, blog, e un'area riservata per i clienti: Next.js gestisce entrambi i casi con un unico framework, alternando SSG per le pagine pubbliche e rendering dinamico per le aree autenticate.

Vite come alternativa moderna

Per chi sceglie React puro, Vite è il build tool da usare. È il successore di fatto di Create React App (ormai deprecato). Setup in 30 secondi, HMR quasi istantaneo, configurazione semplice, ecosystem maturo. Non c'è motivo di usare CRA nel 2025.

La domanda giusta da farsi

Prima di scegliere, rispondi a questa domanda: questa applicazione ha bisogno di essere trovata dai motori di ricerca?

  • Se sì: Next.js, quasi certamente.
  • Se no: React puro con Vite è probabilmente più appropriato.

La seconda domanda: il team già conosce Next.js? Se sì, usarlo anche per app interne non è sbagliato. Se no, valuta se la curva di apprendimento aggiuntiva è giustificata dal progetto.

Se stai pianificando lo stack per un nuovo progetto e vuoi un confronto su misura, contattaci: la scelta dello stack è una delle decisioni che facciamo insieme nella fase di analisi, non qualcosa che imponiamo a priori.

Tag

Next.jsReactSSRSSGfrontend

Domande frequenti

Hai ancora dubbi?

Next.js è sempre meglio di React puro?

No. Next.js aggiunge valore quando hai bisogno di SSR/SSG per la SEO, di file-based routing, di API routes integrate, o di ottimizzazione automatica delle immagini. Per una web app interna senza esigenze SEO, un gestionale, un admin panel, un back-office, React puro con Vite è più leggero, più semplice da configurare e altrettanto potente. Usare Next.js per tutto è come usare un camion per fare la spesa.

Server Components di React 19 cambiano il ragionamento?

In parte. I React Server Components (RSC) portano capacità simili all'SSR di Next.js direttamente nel runtime React, ma la loro adozione richiede comunque un framework che li supporti (attualmente Next.js App Router è il più maturo). Per chi sta imparando o costruisce applicazioni standard, la distinzione rimane valida: se la SEO non conta, puoi evitare la complessità aggiuntiva.

Posso usare Next.js per un'applicazione solo interna?

Sì, tecnicamente. Molti team usano Next.js anche per applicazioni interne perché il team già lo conosce o per la struttura del routing. Il costo è un setup leggermente più complesso e tempi di build più lunghi. Se il team conosce già Next.js e l'app non ha vincoli di semplicità estrema, non è una scelta sbagliata, ma non è nemmeno necessaria.