Salta al contenuto
Tutti i progetti

Open source · Self-hosted

Pingtxt

Monitoraggio uptime self-hosted e open source: un solo container per hub, database e interfaccia web, agent leggeri per controllare i servizi da più località, status page pubbliche e app iOS con notifiche push.

Dashboard di Pingtxt in tema scuro con la lista dei monitor, la barra delle ultime 24 ore e l'uptime

Monitoraggio uptime, in testo semplice

Pingtxt controlla siti, API e servizi e avvisa quando qualcosa smette di rispondere. È self-hosted e open source (AGPL-3.0): un solo container per hub, database e interfaccia web, che gira anche su una piccola VPS con migliaia di monitor. L'interfaccia è volutamente essenziale, monospazio e in stile terminale, in tema chiaro e scuro.

Hub e agent

L'hub è un singolo binario Go: API, scheduler, database e interfaccia web Next.js incorporata. Gli agent sono binari Go minuscoli e senza stato: si installano con un comando, si collegano all'hub in uscita via WebSocket (niente porte aperte, funzionano anche dietro NAT) e si aggiornano da soli con checksum e firma verificati. L'hub decide ogni controllo e lo invia agli agent, così lo stesso check gira da Milano, Francoforte o dal laboratorio di casa.

Lo stato è a maggioranza: un servizio è down quando fallisce dalla maggior parte delle località, degradato quando fallisce solo da alcune. Database a scelta tra SQLite, PostgreSQL e MySQL.

Tipi di controllo

HTTP(S) con regole sulla risposta JSON, keyword, TCP, ping ICMP con perdita di pacchetti, DNS, PostgreSQL, MySQL, Redis, MongoDB, Docker, gRPC, SMTP, heartbeat per cron e backup, server MCP. Scadenza di certificati TLS e domini, soglie di lentezza, IPv4/IPv6 per monitor. Quando un servizio va giù, l'hub raccoglie da solo una diagnostica (DNS, TCP, traceroute) da ogni località.

Status page pubblica di Pingtxt con lo storico di 30 giorni dei servizi
Una status page pubblica, anche sul proprio dominio

Avvisi e status page

Notifiche via webhook, Discord, Slack, Telegram, ntfy, email e push, con escalation, finestre di manutenzione, gruppi e tag. Status page pubbliche con storico, incidenti e aggiornamenti, anche protette da password, e badge da incorporare. Metriche Prometheus, report via email, audit log, ruoli e login con 2FA, GitHub, Google o OpenID Connect.

App iOS e servizi di contorno

Un'app iOS nativa in SwiftUI si collega all'hub con OAuth e riceve gli avvisi come notifiche push, con azioni rapide e Live Activity per gli incidenti in corso. Le push passano da un piccolo relay dedicato, così ogni hub self-hosted le può inviare senza chiavi proprie. Le statistiche d'uso sono anonime e solo su consenso, raccolte da un servizio separato.

Per strumenti e agenti AI

L'hub espone un server MCP con OAuth 2.1: un assistente AI può leggere lo stato dei monitor, aprire la diagnostica di un incidente o mettere in pausa un controllo.

Ideazione, design e sviluppo end-to-end, dal backend al sito pingtxt.com. Il codice è su GitHub.