NanoStatus
NanoStatus es una página de monitorización ligera y autoalojada construida con Go y React. Permite rastrear el estado, tiempos de respuesta y disponibilidad de servicios web en tiempo real mediante Server-Sent Events (SSE). Utiliza SQLite para persistencia y ofrece una interfaz moderna con tema oscu
Ficha actualizada 26 sept 2026, 19:57 · upstream 26 sept 2026, 19:34 · release v1.3.1
Qué es NanoStatus
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
NanoStatus es un dashboard de monitorización ligero diseñado para autoalojarse, construido con un backend en Go y un frontend en React. Su objetivo principal es proporcionar una vista clara del estado (uptime), los tiempos de respuesta y la salud de diversos servicios web en tiempo real. La aplicación utiliza Server-Sent Events (SSE) para enviar actualizaciones instantáneas a los clientes, evitando la latencia asociada al polling HTTP tradicional.
La persistencia de datos se maneja mediante una base de datos SQLite, lo que permite un almacenamiento local eficiente sin necesidad de servicios externos complejos. La configuración inicial puede realizarse mediante un archivo YAML opcional (`monitors.yaml`), el cual se sincroniza en cada arranque del servidor para gestionar la creación o actualización de monitores basándose en hashes de configuración.
En cuanto al despliegue, NanoStatus ofrece una imagen Docker multi-etapa optimizada que resulta en un contenedor ultra-ligero (aproximadamente 16MB) con arquitectura distroless. Esto facilita su integración en entornos de recursos limitados como Raspberry Pi o servidores headless. Para el desarrollo local, se requieren Go 1.24+ y Bun para el frontend.
- Monitorización de infraestructura personal (Home Lab) con bajo consumo de recursos.
- Dashboard centralizado para verificar la disponibilidad de servicios SaaS o APIs externas.
- Herramienta de observabilidad ligera en dispositivos ARM como Raspberry Pi Zero.
- Visualización histórica de tiempos de respuesta mediante gráficos interactivos.
- Gestión de múltiples monitores con intervalos de comprobación personalizados por servicio.
- Imagen Docker ultra-ligera (~16MB) construida con arquitectura distroless para máxima eficiencia.
- Actualizaciones en tiempo real vía SSE, eliminando la latencia del polling HTTP tradicional.
- Base de datos SQLite integrada para persistencia local sin dependencias externas pesadas.
- Interfaz moderna con tema oscuro y efectos glassmorphism para una experiencia visual fluida.
- Configuración inicial mediante archivo YAML sincronizado en cada arranque del servidor.
- Gestión completa vía API REST para crear, editar o pausar monitores sin interfaz gráfica.
- Requiere Go 1.24+ para la compilación local del backend según las especificaciones actuales.
- No incluye Docker Compose nativo en el repositorio, solo Dockerfile y Makefile.
- La limpieza automática elimina datos históricos de comprobación mayores a 1 año diariamente.
- Necesita un volumen persistente (`/data`) para mantener la base de datos SQLite en entornos Docker.
- El archivo YAML de configuración debe ubicarse en el mismo directorio que la base de datos.
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.
Para despliegue con Docker, use la imagen `gjames8/nanostatus`. Ejecute el contenedor mapeando el puerto 8080 y montando un volumen persistente para la base de datos: `-v "$(pwd)/data:/data"`. Asegúrese de colocar el archivo `monitors.yaml` en `/data/` si desea configurar monitores iniciales. El servidor escuchará en el puerto definido por la variable de entorno `PORT` (default 8080). Para desarrollo local, compile el frontend con Bun y ejecute el backend Go directamente.
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.
