hubbub
Hubbub es un hub de notificaciones auto-alojado en Go que centraliza credenciales y distribuye alertas a múltiples canales (ntfy, SMTP, exec) mediante una única API autenticada con clave revocable.
Ficha actualizada 27 sept 2026, 18:09 · upstream 27 sept 2026, 17:57 · release sin release detectada
Qué es hubbub
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
hubbub actúa como punto único de entrada para notificaciones: un cliente POSTea JSON a /v1/notify con su clave Bearer, y el sistema lo distribuye a todos los canales configurados. Cada envío pasa por una outbox persistente en disco, garantizando que fallos temporales en canales no pierdan alertas, solo las posponen.
El proyecto es minimalista: un único binario estático Go sin base de datos, con archivos planos para configuración (TOML) y hot-reload. Incluye dashboard (/admin), documentación auto-generada (/docs), métricas (/metrics) y sistema de latidos para dead-man switch. Soporta ntfy.sh, SMTP genérico y exec para scripts personalizados.
Está en fase temprana: el núcleo funciona end-to-end con pruebas, pero faltan adaptadores como Discord, webhooks bare-URL y rate caps per-key. Se esperan cambios breaking antes de un release etiquetado.
- Centralizar rotación de credenciales de notificaciones sin actualizar cada script cliente
- Alertas multi-canal desde un único endpoint (SMS, email, push, GPIO)
- Dead-man switch para detectar procesos o máquinas caídas
- Escaparate para scripts personalizados vía adaptador exec
- Monitorización de delivery con outbox persistente y logs
- Un único binario Go sin dependencias runtime ni base de datos
- Outbox en disco garantiza late delivery, no lost alerts
- Permisos per-key independientes del canal (separación send/read)
- Configuración TOML hot-reload con validate-before-swap
- Adaptadores nativos para ntfy, SMTP y exec sin rebuild
- Requiere Go 1.26+ instalado manualmente en el servidor
- Sin soporte Docker o compose (flat files only)
- Discord adapter y webhooks bare-URL no implementados aún
- Rate caps globales pero no per-key (en roadmap)
- Faltan adaptadores para canales populares como Slack
Capturas del proyecto
Imágenes reales detectadas en la documentación del repositorio.
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Requiere Go 1.26+. Construir con go build -o hubbub . o descargar binario precompilado. Configurar channels.toml con credenciales por canal y keys.toml con permisos per-key. Ejecutar en puerto 8080 (API) u opcional 2112 (ops). Habilitar heartbeat para dead-man switch. No usar Docker actualmente.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.

