Case study

SeiBoost

Un'applicazione SaaS full-stack di classe enterprise in Next.js 15. Dashboard in tempo reale su WebSocket (Soketi), autorizzazione per ruoli (NextAuth), schema PostgreSQL articolato con Prisma e pubblicazione in Docker.

SeiBoost — Applicazione web

In breve

Anno
2025
Ambito
Piattaforma SaaS, dashboard in tempo reale, ruoli e permessi
Il mio ruolo
Architettura, full-stack, DevOps
Tecnologie
Next.js 15PrismaPostgreSQLNextAuthSoketiRedisRabbitMQDockerCI/CD

Case study

01Il problema

La dashboard doveva mostrare lo stato delle operazioni dal vivo a molte persone insieme, continuando a distinguere chi può vedere che cosa. Interrogare il server ogni pochi secondi da ogni scheda aperta è la via più rapida per saturare il database: con qualche decina di utenti collegati il traffico cresce più in fretta del valore che produce.

02Che cosa ho costruito

  • WebSocket via Soketi al posto del polling: è il server a spingere la modifica, il browser non deve indovinare nulla.
  • Canali privati per ruolo e per squadra, così l'autorizzazione vale anche sul livello di trasporto e non solo nella vista.
  • Redis come strato intermedio per eventi e cache di lettura, lasciando a PostgreSQL le scritture invece del traffico di aggiornamento.
  • Lo schema è guidato dalle migrazioni Prisma: una modifica al modello è versionata insieme al codice, non cliccata in un pannello.

03Che cosa fa adesso

  • Un cambio di stato compare a tutti gli utenti autorizzati senza ricaricare la pagina.
  • I permessi si applicano in un punto solo: aggiungere un ruolo non obbliga a rivedere ogni schermata.
  • Tutto gira in Docker, quindi ambiente locale e produzione sono la stessa cosa.

04Perché questo stack

Next.js 15 con rendering lato server, perché la prima schermata dopo l'accesso doveva essere pronta subito. Soketi invece di un servizio esterno: i dati operativi restano sulla nostra infrastruttura e non c'è un conto da pagare a messaggio.

Tutti i lavori
Cominciamo

Hai un progetto in mente?

Descrivilo in poche righe: rispondo entro 24 ore con un preventivo gratuito e una proposta di stack.