Sobre el proyecto

NetPulse es un panel PWA autoalojado diseñado para monitorear redes domésticas OpenWrt/GL.iNet. Proporciona una vista unificada de toda tu flota de red, con actualizaciones en tiempo real mediante Server-Sent Events (SSE). Las características principales incluyen: - **Vista general de la flota y puntuación de salud**: Una puntuación de 0 a 100 por router y para toda la red, basada en latencia, pérdida, tiempo de actividad y temperatura, actualizada cada 5 segundos. El tráfico WAN en vivo, el feed de alertas, las estadísticas de AdGuard Home y los pares WireGuard se muestran en la misma pantalla. - **Mapa de topología dibujado automáticamente**: La topología de red se infiere a partir de datos de bridge FDB y LLDP, mostrando clientes cableados/inalámbricos, switches, hosts Proxmox con VMs y túneles WireGuard. El diseño es estable y ajustable por el usuario. - **Clasificación de dispositivos**: Cada dispositivo se identifica con nombres de host, IPs, detección de tipo (patrones de nombre de host + OUI), primera vez visto, banda/señal para Wi-Fi y el router al que está conectado. Los usuarios pueden etiquetar dispositivos, reservar IPs y recibir alertas de nuevos dispositivos. - **Salud por router**: Vista detallada del modelo, firmware, CPU, memoria, temperatura, tiempo de actividad, tráfico en vivo, historial de puertos y divisiones de clientes por banda de cada router. También se admiten switches gestionados por SNMP. - **WireGuard y AdGuard Home**: Nombres de pares, handshakes, estadísticas de transferencia; estadísticas de consultas, porcentaje bloqueado, dominios bloqueados principales. - **Wi-Fi y roaming**: Matriz de señal por AP, estado de 802.11r, utilización de canales, eventos de roaming. - **Alertas**: Temperatura, nuevo dispositivo, firmware disponible, WAN caída, problemas de agente. Los canales de notificación incluyen Web Push, ntfy, Telegram y webhooks. - **Multiusuario**: Contraseñas bcrypt, roles de administrador/visor, idioma por usuario (ES/EN). - **PWA instalable**: Funciona en teléfono o escritorio, temas claro/oscuro. - **Integración con OpenWrt**: Paquetes nativos `netpulse-agent` (.ipk/.apk), una página `luci-app-netpulse`, configuración UCI, init procd con auto-reparación. El servidor también puede ejecutarse en el propio dispositivo. - **Autoactualización**: El actualizador integrado busca versiones y las aplica de forma atómica. - **MQTT + Home Assistant (opcional)**: Publica el estado de la flota en un broker MQTT; Home Assistant descubre entidades automáticamente. **Arquitectura**: Backend en Go (binario estático único con aplicación web embebida), frontend React 19, SQLite para series temporales (modo WAL). Sin dependencias de nube; solo telemetría anónima opcional (se puede desactivar). **Instalación**: Inicio rápido con un script curl que configura un servicio systemd. El servidor descubre automáticamente la puerta de enlace mediante un barrido de LAN. Se requiere autorización de clave SSH para el monitoreo. Los agentes se pueden instalar desde la aplicación con un clic, o mediante paquetes de OpenWrt. **Demo**: Hay una demo en vivo con una red de ejemplo disponible en demo.netpulse.cloudless.club. **Licencia**: AGPL-3.0, gratis para siempre.