Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

spindle

Dashboard autoalojado para Navidrome que muestra estadísticas de escucha (artistas, álbumes, sesiones) con frontend Vue y backend Node/Rust. Incluye visualizaciones SVG manuales e importación de historial de Spotify/Last.fm.

Ficha actualizada 26 sept 2026, 1:07 · upstream 26 sept 2026, 0:39 · release v0.4.0

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es spindle

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Spindle es un panel de control autoalojado para servidores Navidrome que transforma datos de escucha en estadísticas visuales. Utiliza una arquitectura modular con un plugin en Rust (WASM) para capturar eventos, un backend en Node.js/Fastify con SQLite y un frontend en Vue 3/Tailwind. Permite importar historial desde Spotify o Last.fm para visualizar tendencias temporales como 'Spotify Wrapped'.

El sistema gestiona múltiples usuarios mediante un selector de perfil, ofreciendo visualizaciones detalladas como gráficos de flujo (streamgraph), mapas de calor semanales y sesiones de escucha. Incluye un reproductor integrado que permite reproducir contenido directamente desde Navidrome sin salir del dashboard.

La instalación se realiza mediante una imagen Docker única que agrupa frontend y API, facilitando la gestión junto al contenedor de Navidrome. Soporta autenticación básica y exportación de tokens para integración con widgets externos.

CASOS DE USO
  • Visualizar estadísticas de escucha personal (artistas, álbumes, sesiones)
  • Importar e integrar historial de Spotify o Last.fm
  • Compartir enlaces efímeros de pistas o listas de reproducción
  • Usar como widget API en dashboards externos
  • Gestionar múltiples usuarios con un solo punto de acceso
PUNTOS DESTACADOS
  • Frontend Vue 3 + Tailwind v4 con visualizaciones SVG manuales
  • Backend Fastify + SQLite para cálculos en tiempo real
  • Plugin de scrobbling en Rust compilado a WASM
  • Importación de historial desde Spotify/Last.fm y Navidrome
  • Reproducción nativa integrada sin salir del dashboard
PRECAUCIONES
  • Requiere instancia propia de Navidrome para funcionar
  • Autenticación global (un usuario) en lugar de login individual por cuenta
  • Dependencia de WASM para el plugin de scrobbling
  • No soporta One-Click deploy nativo, requiere Docker Compose manual
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

Home dashboardYear in reviewLibrary browse
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Docker detectado

Despliegue vía Docker Compose junto a Navidrome. Montar navidrome.db en modo read-only y configurar INGEST_SECRET. Generar hash de contraseña con CLI incluida. Requiere Node 20+ para desarrollo local. Soporta token de lectura separado (SPINDLE_READ_TOKEN) para widgets externos sin login.

✓Dockerfile
—Compose
—One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Next.jsVueNode.jsRust
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
3590
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

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.