
Novu: piattaforma open-source per notifiche multicanale
Novu unifica email, SMS, push, in-app e chat in un'unica API e dashboard visuale, riducendo la complessità dell'orchestrazione delle notifiche.
Cos'è
Novu è un'infrastruttura di notifica open-source pensata per sviluppatori e team di prodotto. Offre un'API unificata e una dashboard visuale per inviare, orchestrare e monitorare comunicazioni su più canali: email, SMS, push mobili, notifiche in-app e chat (Slack, Microsoft Teams, Discord, WhatsApp, Telegram). Il progetto è distribuito con licenza MIT per il codice core, adotta un modello "open core" in cui alcune funzionalità avanzate risiedono in moduli coperti da licenza commerciale, e può essere ospitato in proprio o utilizzato come servizio gestito tramite Novu Cloud.
Nato a Tel Aviv nel 2021 e precedentemente noto come Notifire, Novu ha raccolto un round seed di 6,6 milioni di dollari nel 2022. L'obiettivo dichiarato è fornire un fondo comune riutilizzabile per un problema che la maggior parte dei team software affronta ripetutamente: collegare prodotti e utenti attraverso canali di comunicazione diversi senza dover ricostruire ogni volta il medesimo stack.
Il problema che risolve
Gestire le notifiche in un'applicazione moderna richiede molto più di una singola chiamata a un provider di email o SMS. I team devono integrare provider diversi per ciascun canale, gestire template, applicare logica di routing, rispettare le preferenze degli utenti, implementare retry in caso di fallimento, aggregare eventi in digest e offrire una inbox in-app coerente. Ogni canale ha le proprie API, i propri formati di payload, i propri meccanismi di errore e i propri vincoli di recapito. Questo lavoro si ripete in modo pressoché identico in ogni progetto, consumando tempo di ingegneria e introducendo debito tecnico.
Novu propone di spostare questa logica su uno strato dedicato: invece di spargere il codice delle notifiche tra più servizi, il team definisce workflow centralizzati e li attiva tramite un'API uniforme. Il risultato è una separazione più netta tra il prodotto, che emette semplicemente un evento, e l'infrastruttura, che decide come, dove e quando consegnare il messaggio. Questo approccio rende più semplice aggiungere canali, modificare template o cambiare provider senza toccare il codice applicativo.
Come funziona
L'architettura di Novu si articola in quattro componenti principali:
- API server: espone endpoint REST per attivare workflow, gestire subscriber, template, integrazioni e preferenze.
- Worker: elabora in background le code di notifica, applicando passi condizionali, ritardi, digest e retry.
- WebSocket server: gestisce la distribuzione in tempo reale delle notifiche in-app agli utenti connessi.
- Dashboard: interfaccia web per progettare workflow, redigere template, collegare provider e monitorare l'attività.
Per l'auto-hosting, Novu richiede MongoDB come datastore principale e Redis per le code e la cache. È disponibile anche una distribuzione containerizzata ufficiale basata su Docker Compose, oltre a template per piattaforme come Railway. L'installazione self-hosted prevede la configurazione di variabili essenziali quali chiavi JWT, chiave di cifratura dei provider e secret interni.