Nodejs
Ist nicht die einziege Javascript-Laufzeitumgebung ausserhalb von Browsern. Weitere Alternativen sind:
- 
Deno (https://deno.land)
 - 
Bun (https://bun.sh)
 - 
Asynchrone, ereignisbasierte Javascript-Laufzeitumgebung
 - 
Grundlage für skalierbare Netzwerk-Anwendungen
 - 
Basiert auf Googles V8 Engine
 - 
Open Source und plattformübergreifend
 
Beispiel
// ==== hello-world.js ====
const http = require('http');
const hostname = '127.0.0.1';
const port = '3000';
const server = http.createServer((req, res) => {
	res.statusCode = 200;
	res.setHeader('Content-Type', 'text/plan');
	res.end('Hello, World!\n');
});
server.listen(port, hostname, () => {
	console.log(`Server running at http://${hostname}:${port}/`);
});
Verwendung
Startet das Script, zu dem der Pfad führt
$ node hello-world.js
Server running at http://127.0.0.1:3000/
# Abbruch mit CTRL-C
Startet eine interaktive REPL (Read Eval Print Loop) Shell gestartet werden
$ node
Welcome to Node.js vs.12.16.2
Type ".help" for more information.
Frameworks
- Node-js ist eine low-level Plattform
 - Zahlreiche Frameworks und Tools bauen darauf auf
 
Beispiele
- Express: Webserver, Nachfolger: Koa
 - Socket.io: Echtzeitkommunikation
 - Next.js: serverseitiges React Rendering
 - Webpack: JavaScript Bundler
 - Babel, TypeScript
 - uvm.
 
NPM
- Paketverwaltung für Node.js
 - Repository mit > 1 Mio Paketen
 - Werkzeuge zum Zugriff auf das Repository (npm, yarn)
 - Seit 2020: Github / Microsoft