Boop: un inbox di notifiche push self-hosted da far girare su un VPS
Server Go open source con SQLite che inoltra eventi dalle tue app a un iPhone via APNs, senza relay di terzi. Si installa con Docker in pochi minuti.
Redazione UptimeMag · 8 ottobre 2026 · 2 minuti di lettura

Chi gestisce cron job, backup notturni o pipeline di deploy conosce il problema: sapere subito se qualcosa è andato storto, senza aprire un dashboard o pagare un servizio di error tracking a seggio. Boop, progetto open source scritto in Go, prova a risolverlo con un server che si installa sul proprio VPS e inoltra gli eventi delle applicazioni come notifiche push native su iPhone.
Cosa fa e come è fatto
Il funzionamento è semplice: le app inviano eventi al server Go via POST, che li archivia in SQLite e li spinge su APNs; l'app iOS recupera i dettagli completi dal server e la web UI gestisce i progetti e mostra il QR di pairing. Non c'è alcun relay di terzi tra il server e Apple. Il server, secondo quanto riportato dall'autore del progetto, usa circa 8 MB di memoria sulla sua macchina. Il progetto è deliberatamente non una piattaforma di osservabilità né un sostituto di Sentry: riceve eventi dalle applicazioni, invia notifiche push native e li mantiene in un inbox mobile dedicato.
Il nodo da conoscere prima di partire riguarda l'app per iPhone: l'app iOS è in SwiftUI, per iOS 26, e va compilata e firmata dall'utente, quindi serve un account Apple Developer e un Mac con Xcode. Lato libreria client, sono disponibili un client Elixir e uno Node, oltre a un package community per Laravel.
Installazione minima
Il quick start Docker pubblicato nel repository ufficiale è:
git clone https://github.com/chrisgreg/boop && cd boop
cp .env.example .env
mkdir -p data && chown 1000:1000 data
docker compose up -d --build
open http://localhost:8080
Il primo accesso apre un wizard di setup: verifica del server, APNs, pairing, primo progetto, notifica di prova. Le credenziali APNs sono opzionali: senza, gli eventi vengono comunque salvati e mostrati nella UI ma le push vengono saltate, e la pagina impostazioni lo segnala. Chi preferisce evitare Docker può usare il binario statico: ogni release distribuisce un binario statico senza dipendenze per Linux, macOS e Windows (amd64 e arm64) con la web UI incorporata.
Dove farlo girare
Il carico di lavoro è minimo: un processo Go che scrive su un file SQLite, più connessioni TLS occasionali verso Apple. Per un progetto di queste dimensioni basta una VPS economica con hostname pubblico stabile e HTTPS davanti, requisito più critico della potenza di calcolo perché il telefono deve raggiungere il server ogni volta che si apre una notifica. Sul listino ufficiale Contabo, consultato l'8 ottobre 2026, il piano Cloud VPS 4 (4 vCPU, 8 GB RAM, 100 GB SSD, traffico illimitato) è proposto a 5,50 € al mese IVA inclusa per i primi 24 mesi; la pagina riporta anche i piani superiori, da Cloud VPS 6 a Cloud VPS 18, con RAM crescente fino a 96 GB.
Per chi vuole evitare sorprese, due accorgimenti operativi tratti dalla documentazione del progetto: impostare BOOP_ADMIN_USER e BOOP_ADMIN_PASSWORD prima di esporre il server su internet, perché senza queste variabili gli endpoint di amministrazione restano aperti; e fare il backup del database con sqlite3 data/boop.db ".backup backup.db" invece di una copia a freddo del file.
Testo redatto con il supporto dell'intelligenza artificiale e verificato dalla redazione (AI Act, art. 50).