zurück zum Artikel

JavaScript-Framework: Next.js 12 prÀsentiert neuen Rust-Compiler

Maika Möbus

(Bild: Trismegist san/Shutterstock.com)

Das bisher grĂ¶ĂŸte Release von Next.js erhöht die Geschwindigkeit durch einen neuen Compiler und bereitet sich auf React 18 vor.

Das React-Framework Next.js hat Version 12 erreicht. Das laut der dahinterstehenden Firma Vercel grĂ¶ĂŸte Next.js-Release hat SWC als neuen Compiler und Middleware als Beta-Funktion an Bord. Daneben lassen sich nun einige Features der anstehenden Version React 18 nutzen. Das Major Release enthĂ€lt auch Breaking Changes: dazu zĂ€hlen die Entfernung von webpack 4, nachdem bereits Next.js 11 webpack 5 zum Standard erklĂ€rt hatte, sowie der Anstieg der benötigten Node.js-Version auf mindestens 12.22.0.

In Next.js 12 löst der in Rust geschriebene JavaScript/TypeScript-Compiler SWC (Speedy Web Compiler) [1] den bisher genutzten Compiler Babel ab. Auf SWC setzen bereits das Web-Build-Tool Parcel [2] und die JavaScript/TypeScript-Runtime Deno [3]. Die damit einhergehende native Kompilierung soll die Build- und Refresh-Zeiten in Next.js deutlich verkĂŒrzen.

Laut Vercel kann SWC im Einsatz mit großen Next.js-Codebasen bis zu dreimal schnellere Refreshs sowie bis zu fĂŒnfmal schnellere Builds liefern. Die in Version 12 standardmĂ€ĂŸig aktivierte Kompilierung mit Rust soll 17-mal schneller ablaufen als mit Babel, zu dem der neue Compiler abwĂ€rtskompatibel ist.

Die JavaScript-Bibliothek React liegt seit einem Jahr in der Hauptversion 17 [4] vor, einem Release ohne neue Features. Diese sollen allerdings in React 18 enthalten sein, derzeit als Alpha-Version verfĂŒgbar. In Next.js 12 lassen sich deren Features mit npm install react@alpha react-dom@alpha experimentell nutzen.

React 18 soll unter anderem automatisches Batching von Updates und eine neue Streaming-API fĂŒr serverseitiges Rendern unter Verwendung von React.lazy mitbringen. Die React Working Group hĂ€lt Entwicklerinnen und Entwickler ĂŒber neue PlĂ€ne auf dem Laufenden [5].

Die Funktion Middleware steht in Next.js 12 als Beta bereit, um Code nach dem Motto "Code over Configuration" auszufĂŒhren, bevor eine Anfrage abgeschlossen ist. Basierend auf dem eingehenden Request einer Nutzerin oder eines Nutzers lĂ€sst sich die Reaktion modifizieren, beispielsweise durch einen Redirect oder das HinzufĂŒgen eines Headers. Middleware soll sich fĂŒr verschiedene Anwendungsbereiche wie Authentifizierung, Schutz gegen Bots, Feature Flags oder A/B-Testing eignen. Wie das geht, zeigt die Dokumentation [6].

Next.js lÀuft unter macOS, Windows inklusive Windows Subsystem for Linux (WSL) sowie Linux. Ein Migrationsguide bietet Hinweise [7], worauf bei einem Upgrade auf Version 12 zu achten ist.

Alle weiteren Informationen zur neuen Hauptversion lassen sich einem Blogeintrag entnehmen [8].

(mai [9])


URL dieses Artikels:
https://www.heise.de/-6232241

Links in diesem Artikel:
[1] https://swc.rs/
[2] https://www.heise.de/news/Webentwicklung-Parcel-2-0-bringt-ein-neues-Plug-in-System-6219130.html
[3] https://www.heise.de/news/Webentwicklung-Deno-1-15-stabilisiert-API-zum-URL-Pattern-Matching-6217593.html
[4] https://www.heise.de/news/React-17-als-Stepping-Stone-Release-erschienen-4933983.html
[5] https://reactjs.org/blog/2021/06/08/the-plan-for-react-18.html
[6] https://nextjs.org/docs/middleware
[7] https://nextjs.org/docs/upgrading
[8] https://nextjs.org/blog/next-12
[9] mailto:mai@heise.de