Das Express.js (kurz Express) ist das klassische Web-Framework für Node.js. Seit 2010 ist es die De-facto-Standardwahl für HTTP-Server in der Node-Welt — bewusst minimal, robust und gut dokumentiert.
Express ist kein „Full-Stack-Framework" wie Django oder Rails. Es liefert die Grundbausteine für HTTP-Routing und Request-Verarbeitung; alles andere — Templating, Datenbankzugriff, Validierung, Authentifizierung — wird über externe Module ergänzt. Diese Schlankheit ist Eigenart und Stärke zugleich.
Konzept
Im Kern besteht Express aus zwei Ideen:
- Routing — pro Pfad und HTTP-Methode wird eine Handler-Funktion registriert.
- Middleware — kleine Funktionen, die Request und Response ineinandergreifend verarbeiten. Body-Parsing, Authentifizierung, Logging, Fehlerbehandlung — alles ist Middleware.
Diese Architektur ist außergewöhnlich flexibel. Praktisch jedes Feature lässt sich als Middleware modellieren, und das Express-Ökosystem stellt Middleware-Pakete für nahezu jeden Anwendungsfall bereit.
Im Ökosystem
Viele Frameworks bauen auf oder verwandt mit Express auf:
- NestJS — strukturiert mit Decorators und Modulen, läuft standardmäßig auf Express (alternativ Fastify).
- Sails, LoopBack, Strapi — vollständigere Frameworks, die Express-Ideen erweitern.
- Restify — Express-ähnlich, fokussiert auf REST-APIs.
Daneben hat sich Fastify als modernerer, schnellerer Konkurrent etabliert; Hono als sehr schlankes Framework für moderne Laufzeiten wie Bun, Deno oder Edge-Funktionen.
Wann Express noch sinnvoll ist
Trotz neuerer Alternativen bleibt Express in vielen Projekten erste Wahl:
- Bestehende Codebasen — viele Anwendungen laufen seit Jahren auf Express, ein Wechsel hat selten Mehrwert.
- Maximale Kontrolle — wer eigene Architektur, eigene Konventionen, eigenes Tooling mitbringen will, findet in Express ein neutrales Fundament.
- Lehrumgebungen — Express ist überschaubar und gut dokumentiert; ideal, um die Grundlagen von Node-Backends zu verstehen.
Für neue Projekte mit hohen Performance-Anforderungen oder modernen TypeScript-First-Setups ist Fastify oft die bessere Wahl; für API-zentrierte Anwendungen mit Struktur NestJS. Express bleibt aber der bewährte Allrounder, mit dem man wenig falsch machen kann.