Node.js e npm sono due strumenti molto importanti per creare applicazioni web, librerie, dipendenze, server, API e strumenti a riga di comando. Node è un ambiente di esecuzione di JavaScript fuori dal browser e ci permette di testare il codice senza dovere usare l’ambiente di sviluppo del browser. npm è un gestore dei pacchetti per Node, contiene ogni tipo di libreria, framework o strumento che possiamo aggiungere ai nostri progetti e viene installato direttamente con Node. Possiamo registrarci sul sito di npm e caricare i nostri progetti pubblici gratuitamente.
Per testare il codice che scriviamo siamo costretti ad accedere al browser, aprire l’ispettore e accedere al pannello Console. Tuttavia, risulterà molto più comodo installare un ambiente per JavaScript nel nostro computer. In questo modo possiamo testare il codice che scriviamo direttamente dall’IDE, come Vs Code, e vedere cosa succede o se ci sono errori. Inoltre, Node ci darà suggerimenti in più per se nota problemi quando importiamo o esportiamo i moduli.
Installare Node e npm
Ci sono diversi modi per installare e configurare un ambiente. In questa guida viene suggerito uno dei metodi più moderni, leggeri e adatti a divesi sistemi operativi: l’utilizzo di fnm. Innanzitutto, come abbiamo detto, l’ambiente usato per eseguire JavaScript si chiama Node.js. Questo strumento viene usato per costruire applicazioni web, server, API e strumenti da riga di comando per i terminali. Node ha un’infinità di di librerie e strumenti che possono essere aggiunti, aggiornati e cancellati tramite un gestore di pacchetti, npm (Node Package Manager)
Per installare tutti questi strumenti possiamo utilizzare un gestore di versioni per Node che si occuperà d gestire una o più versioni, di aggiornarle o cancellarle direttamente dalla riga di comando. Uno degli strumenti più veloci, leggeri e multipiattaforma si chiama fnm (Fast Node Manager) ed è stato realizzato con il linguaggio Rust. Un altro strumento molto più diffuso e tuttora consigliato da nmp si chiama nvm (Node Version Manager)
Installare Node sul PC non è affatto difficile. La guida si trova direttamente dal sito ufficiale di Node. Non descrivo qui tutti i comandi semplicemente perché le versioni di Node vengono aggiornate frequentemente e per avere l’ultiva versione stabile bisogna comunque seguire la guida del sito ufficiale. I passaggi sono in genere questi:
- Installare un programma di gestione di versioni per Node;
- Installare Node tramite il programma.
Su Windows è disponibile direttamente l’installer di Node LTS dalla Home Page di Node. E’ il metodo più sicuro e facile perché aggiunge tutte le configurazioni necessarie per usarlo con gli IDE. Installare Node tramite fnm su Windows può impedire che venga visto dal sistema e dobbiamo aggiungere il percorso manualmente. Suggerisco di usarlo e di installare anche i tools consigliati: successivamente si può installare un sistema di gestione oppure usare Ubuntu Server tramite macchina virtuale o WSL per avere fnm o nvm.
Su Linux, invece, conviene decisamente utilizzare nvm. Per farlo si possono seguire le istruzioni della pagina di Node uno alla volta:
- Installi nvm e chiudi il terminale.
- Riapri il terminale e installi Node
- Se usi WSL chiudi la connessione remota e la riapri. Se usi un PC fisico con dentro Linux, lo riavvi.
Tramite Vs Code, possiamo testare qualsiasi file js, dopo averlo aperto tramite il comando debug disponibile nella colonna a sinistra, cliccando su Esegui Debug e selezionando la voce Node.js. Se vengono mostrate altre opzioni, possiamo scegliere Esegui file corrente.

Creazione dei progetti
Possiamo creare un progetto vuoto semplicemente dando il comando dal terminale npm init. Ci verranno fatte alcune domande come il nome da dare al progetto, il numero di versione, una descrizione, lo script principale da eseguire o il file principale da cui parte il progetto, le parole chiave, l’autore e la licenza. Le informazioni vengono salvate su un file chiamato package.json.
{
"name": "progetto-app-web-vuoto",
"version": "1.0.0",
"description": "Progetto app web vuoto",
"main": "script/js/main.mjs",
"scripts": {
"test": "node script/js/main.mjs"
},
"keywords": [
"web"
],
"author": "Infodit",
"license": "ISC"
}
Per fare partire il progetto basta dare il comando npm run. Possiamo indicare esplicitamente un file da eseguire come: npm run esempio.js. Se non specifichiamo nulla, Node cercherà il file di test.
Possiamo anche usare il debug di Vs Code sul file aperto: in questo caso, probabilmente il file viene eseguito direttamente senza bisogno di scegliere alcune opzioni proprio a motivo di avere inizializzato npm.
npm supporta un altro strumento a linea di comando, npx, che permette la creazione di progetti interi tramite i framework, loro componenti e altri pacchetti, senza doverli installare nel sistema. Alcuni esempi da usare singolarmente:
//Progetto Full Stack che usa React
npx create-next-app@latest
//Creare un progetto Angular
npx @angular/cli new nome-del-progetto