Análisis profundo de letras de canciones. Busca un tema, escúchalo con la letra sincronizada y lee una interpretación generada por IA: qué significa realmente, sus referencias, metáforas, contexto del artista y lectura entre líneas.
Ver el diseño completo en SYSTEM_DESIGN.md.
- Búsqueda de canciones (iTunes) con reproductor de YouTube embebido y controles propios.
- Letra sincronizada (LRCLIB) con auto-scroll; opción de pegar la letra o sincronizarla a mano cuando no hay timestamps.
- Importación por link de YouTube.
- Análisis literario en streaming, cacheado localmente para no regenerarlo.
- Tema claro/oscuro.
- API keys propias (en ajustes) o resueltas desde variables de entorno del servidor.
- Next.js 16 + TypeScript + Tailwind 4 + shadcn/ui
- Dexie (IndexedDB) para cache de canciones, letras y análisis
- iTunes Search · YouTube Data API v3 · LRCLIB · lyrics.ovh
- LLMs: Qwen (DashScope) por defecto · Claude · GPT (opt-in vía settings)
pnpm install
cp .env.example .env.local
# completar las keys que vayas a usar
pnpm devAbrir http://localhost:3000.
app/
page.tsx # home con búsqueda
song/[id]/page.tsx # player + letra + análisis
settings/page.tsx # provider, API keys, idioma
api/
search/ # iTunes proxy
youtube/ # resolver videoId
lyrics/ # LRCLIB + lyrics.ovh
analysis/ # provider factory + SSE
config/ # qué keys hay configuradas en el servidor
components/ # UI compartida
lib/ # services (settings, cache, providers)
types/ # tipos de dominio