Tracklytics es una plataforma completa de streaming musical con un motor de analítica e inteligencia de negocio propio: catálogo, reproducción real, suscripciones, pagos, creadores, comunidad, distribución, regalías, publicidad y finanzas conviven con dashboards ejecutivos y administrativos sobre un modelo dimensional en ClickHouse.
Todo el sistema fue especificado con Spec Driven Development (15 capabilities de negocio, 100% especificadas y archivadas con OpenSpec) antes de escribir código, y construido de forma incremental a lo largo de 17 semanas de desarrollo.
| Institución | Universidad Técnica Estatal de Quevedo |
| Carrera | Ingeniería en Software |
| Asignatura | Construcción del Software |
| Estudiante | Eduardo Reinoso Vélez |
![]() |
![]() |
| Catálogo — tema claro | Catálogo — tema oscuro |
![]() |
![]() |
| Dashboard analítico — tema claro | Dashboard analítico — tema oscuro |
![]() |
![]() |
| Inicio de sesión — tema claro | Inicio de sesión — tema oscuro |
- Catálogo y biblioteca — navegación por canciones/playlists/artistas/géneros, búsqueda avanzada, favoritos, playlists colaborativas, historial y reproducción de audio real (YouTube, con fallback simulado).
- Monetización completa — planes B2C/B2B, facturación, regalías con liquidación real por período, publicidad con CPM real y un panel financiero consolidado (gastos, cuentas por cobrar/pagar, presupuesto de campañas).
- Creadores y comunidad — cuentas de artista, subida de tracks, seguimiento, comentarios, feed de actividad y moderación.
- Distribución — sellos, licencias, restricción geográfica de reproducción y configuración de país/moneda/IVA.
- Analítica de negocio — dashboards ejecutivos, comparación y benchmark de artistas, tendencias, proyecciones estadísticas y un Balanced Scorecard estratégico, con acceso graduado por tier B2B (Básico / Pro / Enterprise).
- Administración — un panel por rol (seis roles administrativos por área) con auditoría, permisos, gestión de usuarios, moderación e ingesta de datos.
- API de partners — catálogo de solo lectura para integradores externos, autenticada por API key y segmentada por tier.
15 capabilities de negocio en total, todas especificadas, implementadas y verificadas
end-to-end. El detalle línea por línea de cada una vive en openspec/specs/.
| Capa | Tecnología |
|---|---|
| Frontend | React 18 + TypeScript + Vite, containerizado con Nginx |
| API | FastAPI (Python 3.11), un paquete por capability |
| Base de datos analítica | ClickHouse (modelo dimensional en esquema estrella) |
| Orquestación ETL | Apache Airflow |
| Autenticación y datos operativos | PocketBase |
| Visualización | Recharts |
| Infraestructura | Docker Compose |
| Metodología | Spec Driven Development (OpenSpec) |
git clone https://github.com/eduaardok/tracklytics.git
cd tracklyticsCrea un archivo .env en la raíz (ver docker-compose.yml para la lista completa de
variables) y levanta todo el stack:
docker compose up -dEn la primera ejecución, espera unos minutos a que pb-init cargue el dataset base antes de
disparar el ETL desde /seguridad/ingesta (rol admin). Para desarrollo del frontend con hot
reload:
cd frontend
npm install
npm run devLa documentación técnica detallada vive en docs/:
docs/BITACORA_RESUMEN.md— resumen semanal de todo el desarrollo (S6–S17).docs/DIMENSIONAL_MODEL.md— modelo dimensional completo.docs/CONSTITUCION_TRACKLYTICS.md— identidad y principios del proyecto.docs/OBJETIVOS_TRACKLYTICS.md— mapa de objetivos estratégicos y de trazabilidad.openspec/specs/— especificación formal de las 15 capabilities.
Distribuido bajo licencia MIT.






