Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

open-setlist-stash

Aplicación web auto-alojable para juegos de predicción de setlists musicales que utiliza el Protocolo de Contexto del Modelo (MCP) para leer datos en lugar de almacenarlos, construida con FastAPI y PostgreSQL.

Ficha actualizada 25 sept 2026, 13:29 · upstream 25 sept 2026, 13:08 · release v0.3.0

Ver códigoProblemas y ayudaRepositorio ↗
00

Qué es open-setlist-stash

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

open-setlist-stash es una aplicación web auto-alojable diseñada para crear juegos de predicción de setlists musicales. La arquitectura se basa en FastAPI con Python 3.13 y utiliza PostgreSQL exclusivamente para el estado del juego, mientras que los datos del setlist se acceden a través del Protocolo de Contexto del Modelo (MCP) desde servidores externos. Este enfoque desacoplado permite utilizar la misma imagen de contenedor para diferentes bandas como Phish o Umphrey's McGee simplemente cambiando la configuración del entorno y el servidor MCP correspondiente.

El sistema soporta renderizado server-side con HTMX y Jinja2, eliminando la necesidad de pasos de compilación complejos típicos de aplicaciones SPA. Incluye autenticación mediante OAuth de Google, gestión de sesiones seguras con cookies cifradas, y personalización completa de marca a través de variables de entorno y archivos CSS montados. La aplicación incluye un sistema de puntuación en tiempo real que actualiza los rankings durante el show una vez detectado el encore y estabilizado el conteo de canciones.

La seguridad está integrada mediante escaneo Trivy en la imagen construida, validación estricta de tipos con mypy, y políticas de configuración que impiden el arranque en producción si SESSION_SECRET no está configurado correctamente. El proyecto incluye soporte para ligas privadas, comentarios por show, blog opcional con frontmatter Markdown, y exposición pública de datos a través de endpoints MCP rate-limited.

CASOS DE USO
  • Crear ligas de predicción personalizadas para conciertos específicos como Phish o Umphrey's McGee sin necesidad de forking el código
  • Implementar sistemas de votación en tiempo real durante shows en vivo con puntuación automática basada en setlists parciales
  • Exponer datos de setlist públicamente a través de endpoints MCP para integración con otras herramientas o clientes externos
  • Personalizar completamente la identidad visual y marca mediante configuración de entorno y archivos CSS montados sin modificar el código fuente
PUNTOS DESTACADOS
  • Arquitectura desacoplada que evita forks por banda, permitiendo usar la misma imagen para múltiples artistas con solo cambiar variables de entorno
  • Uso de MCP para acceso a datos del setlist sin almacenamiento directo, reduciendo la superficie de ataque y simplificando actualizaciones de datos
  • Soporte nativo para autenticación OAuth de Google y gestión de sesiones seguras con validación estricta de configuración en producción
  • Despliegue simplificado con Docker Compose incluyendo escaneo Trivy, validación ruff y pruebas pytest contra PostgreSQL real
  • Renderizado server-side con HTMX que elimina la necesidad de pasos de compilación complejos típicos de aplicaciones SPA modernas
PRECAUCIONES
  • Dependencia obligatoria de un servidor MCP externo para los datos del setlist, lo que significa que no puede funcionar sin una fuente de datos configurada correctamente
  • Configuración manual requerida para variables de entorno críticas como SESSION_SECRET en entornos de producción para evitar vulnerabilidades de seguridad
  • Falta de soporte nativo para bases de datos alternativas a PostgreSQL, limitando la portabilidad del estado del juego
VISUAL

Capturas del proyecto

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

A finished show on Tweezer Picks: the setlist grouped by set, and the standings scored against itThe same engine running as Wappy Picks for Umphrey
01

Perfil de infraestructura

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

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

Despliegue detectado

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

Listo para automatizar

Utilizar Docker Compose con las imágenes oficiales o construir localmente. Asegurar que SESSION_SECRET esté configurado con un valor seguro único en entornos de producción. Configurar COOKIE_SECURE=true cuando se utilice HTTPS. Montar volúmenes separados para contenido del blog y assets CSS personalizados. Soporta despliegue en redes privadas LAN, a través de Tailscale o públicamente detrás de un túnel Cloudflare.

✓Dockerfile
✓Compose
✓One-click
03

Stack y dependencias

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

FRAMEWORKS
Next.jsFastAPIPython
SERVICIOS
PostgreSQL
BASES DE DATOS
PostgreSQL
PUERTOS
37065434
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.