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à.

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.
