7 ottobre 2026 · 1 min di lettura

Monorepo Nx per un gestionale, come divido app e librerie

Come organizzo un gestionale Angular + NestJS in un monorepo Nx perché resti ordinato anche dopo anni.

Un gestionale vive a lungo: nuove funzioni, nuovi reparti, nuovi sviluppatori. Il monorepo Nx mi aiuta a tenerlo ordinato con una regola semplice: le app sono sottili, la logica sta nelle librerie.

La struttura

apps/
  web/        Angular: solo routing e composizione
  api/        NestJS: solo bootstrap e moduli
libs/
  shared/types        tipi condivisi tra frontend e backend
  ordini/data-access  chiamate API e stato
  ordini/feature      pagine e componenti del dominio ordini

Perché funziona

  • I tipi condivisi evitano che frontend e backend si disallineino.
  • Le regole di dipendenza di Nx impediscono che una feature importi un’altra feature.
  • nx affected esegue test e build solo su ciò che è cambiato, e la CI resta veloce.