← Tutte le tecnologie

backend

TypeScript: tipi end-to-end per software che non si rompe

Tipi statici end-to-end: meno bug a runtime, refactoring sicuri, contratti chiari tra team.

Perché ci poggiamo su TypeScript

  • Tipi condivisi front-back
  • Editor smart
  • Discriminated unions

Perché tutto il nostro codice è tipizzato

TypeScript non è una tecnologia che si vende al cliente: è una disciplina interna che il cliente percepisce solo come minor numero di problemi. Dichiarare la forma dei dati significa che l'errore banale — un campo rinominato, un valore che può essere assente, una funzione chiamata con i parametri invertiti — viene segnalato mentre si scrive, non dall'utente al telefono.

È una scelta che si paga in fretta. Su un gestionale con centinaia di campi e decine di stati possibili, la differenza tra codice tipizzato e non tipizzato è la differenza tra poter cambiare qualcosa e avere paura di toccarlo.

Contratti condivisi tra frontend e backend

Il punto in cui le applicazioni si rompono più spesso è il confine tra client e server: il backend cambia un campo, il frontend non lo sa, e il bug si manifesta su una schermata secondaria settimane dopo. Con TypeScript su entrambi i lati definiamo le strutture una volta e le condividiamo, così quel disallineamento diventa un errore di compilazione.

Quando il database è PostgreSQL o Supabase generiamo i tipi direttamente dallo schema: la tabella è la fonte di verità e ogni modifica si propaga fino all'interfaccia. Aggiungere una colonna non obbligatoria e dimenticarsene diventa tecnicamente impossibile.

Stati impossibili resi impossibili

La parte più utile del sistema di tipi è quella che permette di modellare i domini reali con precisione. Un intervento tecnico non ha genericamente una data di chiusura e un motivo di annullamento: o è chiuso e ha un esito, o è annullato e ha una motivazione. Le union discriminate permettono di dichiararlo, e il compilatore obbliga a gestire ogni caso.

Il risultato è che intere categorie di bug — lo stato incoerente, il campo valorizzato quando non dovrebbe esserlo — non arrivano mai al collaudo perché non sono rappresentabili.

Domande frequenti su TypeScript

TypeScript rallenta lo sviluppo?
All'inizio di poco, poi accelera. Il tempo speso a dichiarare i tipi viene restituito con gli interessi in fase di modifica e di ricerca dei problemi, che su un software di lunga vita è dove si concentra la maggior parte del lavoro.
Si può introdurre TypeScript in un progetto JavaScript esistente?
Sì, gradualmente: convive con JavaScript nello stesso repository e si può procedere file per file, partendo dalle parti più critiche. Non serve un blocco dello sviluppo per fare la conversione.
TypeScript serve anche lato backend?
Soprattutto lato backend. È lì che vivono le regole di business e le operazioni che toccano i dati: avere garanzie sulla forma di ciò che si sta scrivendo nel database vale più che averle su un componente grafico.

Approfondimenti

dove la usiamo

Progetti che girano su TypeScript

Connexon — Field Service Management per installazioni fibra ottica — anteprima

FiberSystems2024in-produzione

Connexon — Field Service Management per installazioni fibra ottica

Piattaforma cloud dual-app per la gestione operativa degli interventi di installazione FTTH in sub-appalto: pannello amministrazione per l'ufficio, PWA mobile per i tecnici sul campo, magazzino integrato a 3 livelli e statistiche real-time per i committenti wholesale.

  • Angular
  • Supabase
  • PostgreSQL
  • TypeScript
Apri il caso studio
Itelcom — Connexon in produzione su fibra, telefonia e reti dati — anteprima

Itelcom2026in-produzione

Itelcom — Connexon in produzione su fibra, telefonia e reti dati

Secondo roll-out di Connexon come prodotto: la piattaforma esce dal cliente di origine e viene configurata su Itelcom, azienda di telecomunicazioni di Torre del Greco con vent'anni di storia tra fibra ottica, impianti telefonici e cablaggi strutturati.

  • Angular
  • Supabase
  • PostgreSQL
  • TypeScript
Apri il caso studio
Medacom Telecomunicazioni — Connexon per la squadra di campo — anteprima

Medacom2026in-produzione

Medacom Telecomunicazioni — Connexon per la squadra di campo

Terza azienda del settore telecomunicazioni a portare in produzione Connexon: programmazione degli interventi, app di campo per i tecnici e tracciabilità dei materiali per l'impresa di San Giuseppe Vesuviano specializzata in impianti di telecomunicazione.

  • Angular
  • Supabase
  • PostgreSQL
  • TypeScript
Apri il caso studio
CVMGEST — CRM territoriale per reti di informatori scientifici — anteprima

CVMEDICAL2023in-produzione

CVMGEST — CRM territoriale per reti di informatori scientifici

Piattaforma cloud per le aziende farmaceutiche/medical-device che vendono tramite reti ISF: anagrafica medici e strutture, programmazione visite con firma, sell-in/sell-out, quote, statistiche di copertura territoriale. PWA installabile, offline-ready.

  • Angular
  • Supabase
  • PostgreSQL
  • TypeScript
Apri il caso studio
Infopick — Picking e spedizione magazzino su due PWA Angular — anteprima

Infostore2026in-produzione

Infopick — Picking e spedizione magazzino su due PWA Angular

Suite di due web app PWA Angular 20 condivise sullo stesso backend Supabase: una console per il responsabile (gestione magazzinieri, ordini, spedizioni) e una app operatore mobile-first per i magazzinieri (scansione barcode, evasione riga per riga, conferma pick). Integrata con Poleepo per le spedizioni.

  • Angular
  • Supabase
  • PostgreSQL
  • TypeScript
Apri il caso studio
Pizza Express — Gestionale ristorazione: sala, asporto, consegna, prenotazioni, menu QR — anteprima

Pizza Express2024in-produzione

Pizza Express — Gestionale ristorazione: sala, asporto, consegna, prenotazioni, menu QR

App Angular 21 + Supabase che gestisce l'intero ciclo di una pizzeria moderna: cassa con scontrino Epson ePOS, sala con mappa tavoli e coperti, asporto e consegna a domicilio, prenotazioni online con calendario risorse-tavoli, menu digitale QR-a-tavolo con allergeni, ricette/ingredienti/varianti/formati. Backend cloud, stampa scontrino sulla LAN del locale via proxy Cloudflared.

  • Angular
  • Supabase
  • PostgreSQL
  • TypeScript
Apri il caso studio
PriceScan — App companion di Mexal per consultazione catalogo e presa ordini in mobilità — anteprima

Natidea2024in-produzione

PriceScan — App companion di Mexal per consultazione catalogo e presa ordini in mobilità

PWA installabile su Windows, Android e iOS che si connette al gestionale Mexal via Web API. Quattro moduli attivabili separatamente — Scanner, Ricerca, Scanner Clienti, Ordini — per consultare in tempo reale immagine, prezzo, esistenza e categoria di ogni articolo e per creare ordini direttamente in Mexal con listini personalizzati.

  • Angular
  • Passepartout Mexal
  • TypeScript
  • PWA
Apri il caso studio
Sogeca — Connettore Mexal ↔ PrestaShop per lo shop di materiale elettrico — anteprima

Sogeca2024in-produzione

Sogeca — Connettore Mexal ↔ PrestaShop per lo shop di materiale elettrico

Connettore Node.js che sincronizza in continuo il gestionale Mexal di Sogeca con lo shop PrestaShop sogeca.net: articoli, giacenze, copertine e allegati, ordini. Job daemon che gira H24, scrive log strutturati per ogni esecuzione e gestisce creazione, aggiornamento e disattivazione articoli senza intervento manuale.

  • Node.js
  • Passepartout Mexal
  • PrestaShop
  • TypeScript
Apri il caso studio
EdilDoc — PWA di documentazione cantiere per Tramontano Group — anteprima

Tramontano Group2023in-produzione

EdilDoc — PWA di documentazione cantiere per Tramontano Group

Web app Angular 16 + Firebase per la documentazione di cantiere: anagrafica cantieri e fornitori, foto scattate dal telefono direttamente nell'app, consuntivo ore operai per cantiere, scheda contabile e import Excel di prodotti e listini fornitori. Installabile come PWA, funziona anche con segnale ballerino in cantiere.

  • Angular
  • TypeScript
  • PWA
Apri il caso studio
Tinnovo — Sito istituzionale Next.js con blog editoriale — anteprima

Tinnovo2025in-produzione

Tinnovo — Sito istituzionale Next.js con blog editoriale

Sito ufficiale tinnovo.it costruito su Next.js 16 + React 19. Schede prodotto per l'intero ecosistema gestionale rappresentato (NTS Informatica, Ranocchi Software, Zucchetti, Fluida, GAMA, 3-Way Software), area servizi e blog editoriale con editor TipTap, autenticazione Firebase per il backoffice e invio email transazionali con Resend.

  • Next.js
  • React
  • TypeScript
  • Vercel
Apri il caso studio
Tinnovo Meeting — Sistema RSVP per la presentazione del software Ranocchi — anteprima

Tinnovo2026in-produzione

Tinnovo Meeting — Sistema RSVP per la presentazione del software Ranocchi

App Next.js 16 + Supabase per gestire l'invito alla presentazione del software Ranocchi: import dei clienti da Excel, invio email personalizzate con token, landing one-shot di conferma o rifiuto, dashboard organizzatori con statistiche live ed export Excel finale.

  • Next.js
  • React
  • TypeScript
  • Supabase
Apri il caso studio
Studio Di Sarno — Sito istituzionale e blog — anteprima

Studio Di Sarno2024in-produzione

Studio Di Sarno — Sito istituzionale e blog

Sito istituzionale studiodisarno.it per uno studio medico privato: catalogo servizi dinamico, schede patologie/trattamenti, blog editoriale in markdown e galleria fotografica. Stack Next.js 16 (App Router) + React 19 + Supabase (Postgres + Storage + RPC) + Sass moduli, con SEO ottimizzato sul posizionamento territoriale e JSON-LD schema.org.

  • Next.js
  • React
  • TypeScript
  • Supabase
Apri il caso studio
Pang Group — Sito istituzionale — anteprima

Pang Group2025in-produzione

Pang Group — Sito istituzionale

Sito istituzionale single-page per Pang Group (Roma) basato su Next.js 16 + React 19. Racconta i sei filoni di attività — software/computer, hardware, programmi informatici, gestionali a noleggio, vendita prodotti elettronici, elettrodomestici con assistenza — e raccoglie testimonianze clienti, orari di apertura e contatti (telefono, PEC, email).

  • Next.js
  • React
  • TypeScript
  • Vercel
Apri il caso studio
Centro Estetico Vicky — Sito istituzionale e schede trattamento — anteprima

Centro Estetico Vicky2025in-produzione

Centro Estetico Vicky — Sito istituzionale e schede trattamento

Sito istituzionale centroesteticovicky.it per il Centro Estetico Vicky di Salerno, con schede di dettaglio per ogni trattamento viso e corpo (esosomi K-Care, Skinjaluronic, Sculpt, Lipolaser, HyShape, EndosferaMed, dermaroller, fili di collagene LED, massaggi), pagina dermaroller-endosfera dedicata, listino prezzi per categoria, galleria collegata a Instagram, modulo contatti via dialog, pagine legali e tracciamento marketing.

  • Next.js
  • React
  • TypeScript
  • Vercel
Apri il caso studio
DR Group — Sito istituzionale grossista alimentare — anteprima

DR Group2025in-produzione

DR Group — Sito istituzionale grossista alimentare

Sito istituzionale drgroupmilano.com per il grossista alimentare DR Group di Milano. Vetrina delle otto categorie merceologiche (infanzia, bibite, igiene personale, igiene casa, frutta secca, carne, ortofrutta, salumi e formaggi) con immagini dedicate, blocchi informativi sull'attività e modulo contatti per richiesta listino. Stack Next.js 16 + React 19.

  • Next.js
  • React
  • TypeScript
  • Vercel
Apri il caso studio
AB Multiservice — Sito istituzionale ingrosso e dettaglio — anteprima

AB Multiservice2025in-produzione

AB Multiservice — Sito istituzionale ingrosso e dettaglio

Sito istituzionale abmultiservice.it per l'ingrosso AB Multiservice di San Giorgio a Cremano (NA). Presenta gli otto settori merceologici — casalinghi, detersivi, elettrodomestici, agricoltura e giardinaggio, bevande, alimentari e ortofrutta, ittico, ricambi automotive — con scheda, immagine e codice per ciascuno, più una sezione dedicata alla vendita online dei ricambi. Next.js 15 + React 19 con esportazione statica.

  • Next.js
  • React
  • TypeScript
  • Vercel
Apri il caso studio
BP Commerce — Sito istituzionale per grossista — anteprima

BP Commerce2025in-produzione

BP Commerce — Sito istituzionale per grossista

Sito istituzionale bpcommerce.it per il grossista BP Commerce di Volla (NA). Quattro famiglie merceologiche presentate a schede — casa e detergenza con elettrodomestici, agricoltura e giardinaggio, bevande analcoliche, alimentari freschi e confezionati — con dati strutturati LocalBusiness, cookie banner, pagine legali, sitemap e robots generati dal codice.

  • Next.js
  • React
  • TypeScript
  • Vercel
Apri il caso studio
ELEA Srl — Sito istituzionale single-page — anteprima

ELEA Srl2025in-produzione

ELEA Srl — Sito istituzionale single-page

Sito istituzionale single-page per ELEA Srl costruito su Next.js 16 + React 19. Racconta in modo chiaro le due divisioni dell'azienda — IT & Sviluppo Tecnologico, Media & Advertising — le partnership strategiche (AIDA Doc Easy, Dylog Buffetti, 3-Way Software) e la mission del fondatore Francesco Giancotti. SEO ottimizzato sul posizionamento territoriale Sant'Anastasia / Napoli e sulle keyword IT solutions, cybersecurity, advertising digitale, Il Mediano.

  • Next.js
  • React
  • TypeScript
  • Vercel
Apri il caso studio
Beatrix — Piattaforma cloud per la gestione del forno crematorio — anteprima

Eden2026in-produzione

Beatrix — Piattaforma cloud per la gestione del forno crematorio

Due web app Angular 21 sullo stesso backend Supabase: la console di amministrazione per l'impianto — calendario cremazioni su tre forni, clienti, tariffario, manutenzioni, festivi, statistiche e log eventi — e l'app riservata alle onoranze funebri, che prenotano lo slot, pagano con carta o in sede e annullano in autonomia entro la finestra consentita. Regole di business applicate in Postgres, non solo nell'interfaccia.

  • Angular
  • Supabase
  • PostgreSQL
  • TypeScript
Apri il caso studio
Baldassarre D'Avino — Sito bilingue per autore con contenuti autogestiti — anteprima

Baldassarre D'Avino2026in-produzione

Baldassarre D'Avino — Sito bilingue per autore con contenuti autogestiti

Sito bilingue italiano/inglese per uno scrittore e poeta: schede libro con link d'acquisto, articoli, biografia, galleria fotografica e aforisma del giorno consultabile per data. Tutti i contenuti vivono su Supabase e l'autore li pubblica da solo; le pagine si rigenerano da sole con ISR, senza un nuovo deploy.

  • Next.js
  • React
  • TypeScript
  • Supabase
Apri il caso studio

Stai valutando TypeScript?

Ti diciamo onestamente se è la scelta giusta per il tuo progetto.

Parliamone