Stworzone w 2009 roku wieloplatformowe środowisko uruchomieniowe o otwartym kodzie do tworzenia aplikacji typu server-side napisanych w języku JavaScript. Node.js umożliwia programistom tworzenie aplikacji w obrębie jednego języka programowania zamiast polegania na odrębnych po stronie serwerowej. Node.js był pierwszym środowiskiem, które pozwalało na wykorzystanie kodu JavaScript. Node.js składa się z silnika V8 (stworzonego przez Google), biblioteki libUV oraz kilku innych bibliotek.
Posiada nieblokującą obsługę wejścia/wyjścia, co pozwala stworzyć wysoce skalowalne rozwiązania po stronie serwera, maksymalizując przy tym wykorzystanie jego procesora i pamięci.
Dzięki mechanizmowi zdarzeń Node.js może być z łatwością skalowalny. Dzięki temu programiści mogą rozbudować środowisko tak, aby działało z jak największą wydajnością.
Posiada rozbudowaną dokumentację składającą się między innymi z dużej ilości tutoriali oraz przykładowych projektów.
Charakterystyka kilku wybranych elementów Node.js
var http = require("http"),
url = require("url");
http.createServer(function (request, response) {
request.on('end', function () {
var _get = url.parse(request.url, true).query;
response.writeHead(200, {
'Content-Type': 'text/plain'
});
response.end('Your data: ' + _get['data']);
});
}).listen(8080);
if(!localStorage.getItem('name')) {
setUserName();
} else {
var storedName = localStorage.getItem('name');
myHeading.textContent = 'Mozilla is cool, ' + storedName;
}