MSP Monitor Dashboard
Dashboard de monitoreo unificado para Proveedores de Servicios Administrados (MSP). Integra MeshCentral, LibreNMS y Headwind MDM en una sola interfaz moderna con tema oscuro cyan/navy.
Caracteristicas
- Monitoreo Unificado: Visualiza todos tus dispositivos en una sola interfaz
- Multi-Tenant: Gestion de multiples clientes con aislamiento de datos
- Control Remoto: Acceso a escritorio, terminal y archivos via MeshCentral
- MDM Empresarial: Gestion completa de dispositivos Android con Headwind MDM
- Monitoreo de Red: SNMP, NetFlow y alertas via LibreNMS
- Sistema de Alertas: Reglas personalizables con notificaciones por email, SMS y webhook
- Reportes: Inventario, uptime, alertas y actividad de usuarios
- API Type-Safe: Backend con tRPC para comunicacion tipada
Stack Tecnologico
| Componente | Tecnologia |
|---|---|
| Frontend | Next.js 14, React, Tailwind CSS |
| Backend | Next.js API Routes, tRPC |
| Base de Datos | PostgreSQL 16 + Prisma ORM |
| Cache/Queue | Redis 7 + BullMQ |
| Monitoreo PC | MeshCentral |
| Monitoreo Red | LibreNMS |
| MDM Movil | Headwind MDM |
| Proxy/SSL | Nginx + Let's Encrypt |
| Contenedores | Docker + Docker Compose |
Inicio Rapido
Requisitos
- Node.js 20+
- Docker y Docker Compose
- Acceso a MeshCentral, LibreNMS y/o Headwind MDM
Instalacion
# Clonar repositorio
git clone https://git.consultoria-as.com/msp/msp-monitor-dashboard.git
cd msp-monitor-dashboard
# Ejecutar script de setup
chmod +x scripts/setup.sh
./scripts/setup.sh
Configuracion Rapida
-
Copia el archivo de configuracion:
cp .env.example .env -
Edita
.envcon tus credenciales:# Base de datos DATABASE_URL="postgresql://user:pass@localhost:5432/msp_monitor" # Integraciones MESHCENTRAL_URL="https://mesh.tudominio.com" MESHCENTRAL_USER="admin" MESHCENTRAL_PASS="password" LIBRENMS_URL="https://librenms.tudominio.com" LIBRENMS_TOKEN="tu-token" HEADWIND_URL="https://mdm.tudominio.com" HEADWIND_TOKEN="tu-token" -
Inicia los servicios:
# Desarrollo npm run dev # Produccion docker-compose -f docker/docker-compose.yml up -d -
Accede al dashboard en
http://localhost:3000
Estructura del Proyecto
msp-monitor-dashboard/
├── src/
│ ├── app/ # Next.js App Router
│ │ ├── (dashboard)/ # Paginas del dashboard
│ │ └── api/ # API endpoints
│ ├── components/ # Componentes React
│ │ ├── layout/ # Layout components
│ │ └── dashboard/ # Dashboard components
│ ├── server/ # Backend
│ │ ├── trpc/ # tRPC routers
│ │ ├── services/ # Clientes de integracion
│ │ └── jobs/ # Workers de procesamiento
│ ├── lib/ # Utilidades
│ └── types/ # Tipos TypeScript
├── prisma/ # Schema de base de datos
├── docker/ # Configuracion Docker
│ ├── nginx/ # Configuracion Nginx
│ └── docker-compose.yml
├── scripts/ # Scripts de utilidad
└── docs/ # Documentacion
Documentacion
Comandos Utiles
# Desarrollo
npm run dev # Iniciar servidor de desarrollo
npm run build # Compilar para produccion
npm run lint # Verificar codigo
# Base de datos
npm run db:generate # Generar cliente Prisma
npm run db:push # Aplicar schema a BD
npm run db:studio # Abrir Prisma Studio
# Workers
npm run jobs:start # Iniciar workers de procesamiento
# Docker
docker-compose -f docker/docker-compose.yml up -d # Iniciar servicios
docker-compose -f docker/docker-compose.yml down # Detener servicios
docker-compose -f docker/docker-compose.yml logs -f # Ver logs
# Backups
./scripts/backup-db.sh # Crear backup
./scripts/restore-db.sh /ruta/backup.sql.gz # Restaurar backup
Contribuir
- Fork el repositorio
- Crea una rama para tu feature (
git checkout -b feature/nueva-funcionalidad) - Commit tus cambios (
git commit -am 'Agregar nueva funcionalidad') - Push a la rama (
git push origin feature/nueva-funcionalidad) - Crea un Pull Request
Licencia
Este proyecto es privado y propietario de Consultoria AS.
Soporte
Para soporte tecnico, contacta a:
- Email: soporte@consultoria-as.com
- Web: https://consultoria-as.com
Desarrollado con ❤️ por Consultoria AS
Description
Languages
TypeScript
92.8%
Shell
4.4%
CSS
2.2%
Dockerfile
0.4%
JavaScript
0.2%