Next.js è un framework per applicazioni web open source, sviluppato da Vercel - che ne detiene i diritti - e da una comunità di collaboratori individuali, che consente sia la generazione di pagine statiche che il rendering automatico a lato server.

Next.js è basato sulla libreria per JavaScript React e utilizza Node.js come ambiente di runtime. Supporta linguaggi come TypeScript e Sass.

È uno dei framework per applicazioni web più popolari nell'industria.

Caratteristiche Principali Next.js si distingue dagli altri framework web per diverse ragioni.

Il Server-Side Rendering (SSR, rendering lato server) di Next.js permette un caricamento più veloce delle pagine e l'esecuzione di processi privati da parte del server.

La capacità di generare pagine statiche durante la fase di compilazione (Static Site Generation, SSG) consente inoltre al framework di ottimizzare ulteriormente le prestazioni di distribuzione di siti web attraverso CDN.

Il sistema di routing dinamico di Next.js è basato su pagina, semplificandone il funzionamento e rimuovendo la necessità di librerie aggiuntive.

Next.js supporta il HMR (Hot Module Replacement), consentendo agli sviluppatori di visualizzare le modifiche in tempo reale senza dover ricaricare l'intera pagina.

Infine, essendo basato su React.js, Next.js sfrutta il vasto ecosistema di librerie e componenti di React.

Storia Next.js fu rilasciato inizialmente come progetto open-source su GitHub il 25 ottobre 2016. Era basato principalmente su sei principi: funzionalità pronte all'uso senza installazioni, uso completo di JavaScript, tutte le funzioni scritte in JavaScript, server-rendering e suddivisione del codice automatici, data-fetching configurabile, richieste anticipate, sviluppo semplificato.

Dalla prima pubblicazione vennero poi implementati aggiornamenti con cadenza annuale. Aggiornamento degno di nota fu Next.js 13, pubblicato il 26 ottobre 2022, che portò un nuovo pattern per il routing in beta, con l'aggiunta di App Router e il supporto ai layout, React Server Components, lo streaming e un nuovo set di metodi per il data-fetching. A questo si aggiunse l'annuncio di nuovi strumenti per lo sviluppo front-end chiamato Turbo, incluso Turbopack come successore di Webpack, Turborepo per sistemi di build incrementale.

Versioni Di seguito una lista non completa delle versioni pubblicate con indicazione in grassetto delle major release. +VersioneData di pubblicazioneCambiamentiNote1.0.025 ottobre 2016Versione pubblica iniziale.2.0.0marzo 20177.0.0settembre 2018Aggiunto il supporto per l'API React Context, miglioramenti alla gestione degli errori, aggiunto Webpack 4.8.0.011 febbraio 2019Distribuzione serverless delle app, con codice suddiviso in funzioni lamda avviate su richiesta. Ridotto il tempo per le esportazioni statiche e migliorate le performance di pre-fetch.9.0.08 luglio 2019Supporto a TypeScript automatico, routing file-based, 9.3.09 marzo 2020Supporto a Sass e moduli CSS.9.5.027 luglio 2020Aggiunta il supporto alla rigenerazione statica, riscrittura e reindirizzamento incrementale.10.0.027 ottobre 2020Supporto a React 17, ottimizzazione automatica delle immagini, supporto all'importazione CSS di terze parti tramite npm. 11.0.015 giugno 2021Aggiunto il supporto a Webpack 5, la funzionalità in anteprima "Next.js Live" per lo sviluppo real-time collaborativo, una funzione sperimentale per la conversione e migrazione automatica da Create React App a Next.js.12.0.026 ottobre 2021Aggiunto il compiler Rust, supporto AVIF, funzioni Edge e Middleware, importazione nativa ESM & URL. Supporto a React 18, 13.0.026 ottobre 2022Aggiunto un nuovo pattern in beta per il routing, con App Router e supporto ai layouts, React Server Components, streaming e un nuovo set di metodi per il data-fetching. Annunciato un nuovo set di strumenti per lo sviluppo front-end chiamato Turbo, con Turbopack in sostituzione di Webpack e Turborepo per sistemi di build incrementali.13.1.022 dicembre 202213.2.023 febbraio 202313.3.06 aprile 202313.4.04 maggio 2023Versione stabile di App Router per l'uso in produzione.13.5.019 settembre 202314.0.026 ottobre 2023Migliorata la gestione della memoria.14.1.018 gennaio 202414.2.011 aprile 202415.0.021 ottobre 2024Supporto a React 19, miglioramenti a Turbopack, aggiunta API per l'osservazione della life-cycle, miglioramenti ai form HTML per la navigazione lato client, supporto TypeScript per il file di configurazione, supporto a ESLint 9.15.1.010 dicembre 2024

Note

Voci correlate

AngularJS ReactJS Front-end e back-end Sito web

Collegamenti esterni