NodeJS é um ambiente de execução JavaScript que permite rodar código JavaScript fora de um navegador. Apresenta conceitos como módulos, pacotes, desenvolvimento assíncrono e ferramentas como NPM. Pode ser usado para construir servidores, aplicações desktop e ferramentas de desenvolvimento.