Node.js — падзейна-арыентаваная серверная платформа распрацоўкіпраграм дляінтэрнэту. У якасцімовы праграмавання выкарыстоўваеццаJavaScript (існуе пашырэнне, якое дазваляе распрацоўку наCoffeScript — спрошчанай мове праграмавання, якая аўтаматычна канвертуецца ў JavaScript)[6].Зыходны код Node.js заснаваны наV8 JavaScript Engine — распрацаванымGoogle рухавіку JavaScript з адкрытым зыходным кодам, які выкарыстоўваецца ў браўзерыGoogle Chrome.[7]
Распрацоўка Node.js пачалася ў 2009 годзе як персанальны некамерцыйны праект Раяна Даля (англ.:Ryan Dahl), пазней распрацоўка праекту спансавалася кампаніяй Joyent.[8] Станам на 2026 год развіццём Node.js займаецца фонд OpenJS.
Рзалізацыя найпрасцейшагаHTTP-серверу на Node.js, які адказвае тэкстам «Hello World» на кожны запыт:
varhttp=require('http');http.createServer(function(req,res){res.writeHead(200,{'Content-Type':'text/plain'});res.end('Hello World\n');}).listen(1337,'127.0.0.1');console.log('Server running at http://127.0.0.1:1337/');
Каб запусціць сервер дастаткова захаваць гэты код у файл (напрыкладexample.js) і выканаць у камандным радку каманду накшталт:
% node example.js
Другі вядомы прыклад — TCP-сервер, які вяртае кліенту тэкст кожнага атрыманага запыту:
Дзейнасць супольнасці распрацоўшчыкаў Node.js у асноўным сканцэнтравана вакол спісаў рассылкіnodejs іnodejs-dev, а таксамаIRC канала #node.js наfreenode. Штогод супольнасць збіраецца наNodeConf — канферэнцыю распрацоўшчыкаў Node.js.[9]
Базавая функцыянальнасць Node.js можа быть пашырана з дапамогай падключальных пакетаў. У склад дыстрыбутыву Node.js уваходзіцьnpm — менеджер пакетаў пашырэння, сістэма, якая спрашчае працэс спампоўкі і ўсталёўкі пакетаў, а таксама сочыць за іх узаемазалежнасцямі.[10] Назва гэтай сістэмы, адпаведна яе аўтару, не з’яўляецца скарачэннем «Node.js Packet Manager».[11]
Бібліятэка даступных для ўсталёўкі пакетаў называеццаnpm registrtyАрхівавана 30 ліпеня 2012. і налічвае больш за 9 тысяч пакетаў.[12] Бібліятэка адкрыта для дапаўнення.