Sobre el proyecto

Tide es un cliente de música de escritorio para Linux construido con Python, PySide6 (Qt6) y mpv, sin Electron. Agrega múltiples fuentes de música en una única biblioteca y cola: YouTube Music, Spotify, Subsonic/Navidrome, archivos locales, SoundCloud, Bandcamp y Mixcloud. Un modo de búsqueda federada consulta todas las fuentes habilitadas a la vez y etiqueta cada resultado según su origen; las pistas de distintos servicios pueden convivir en la misma cola y reproducirse mediante el backend adecuado. Desde la versión 2.0, la aplicación incluye dos personalidades de interfaz distintas que comparten una única biblioteca y cola. "Brutalist" es un reproductor monoespaciado, de bordes duros y sin animaciones, con botones entre corchetes y medidores de bloques. "Modern" usa esquinas suaves, iconos, deslizadores elásticos con puntos magnéticos y un fondo que toma color de la portada del álbum y reacciona a los graves. Cada personalidad mantiene de forma independiente su propio tema, diseño, movimiento, esquinas, iconos de navegación, glifos, fondos y personalizaciones. Aparece un selector en instalaciones nuevas o tras actualizar a 2.0; las instalaciones existentes de 1.x conservan su aspecto. Se incluyen dieciséis temas integrados (cinco brutalist, once modern), cada uno define sus propias fuentes, uso de mayúsculas en el texto, radio de esquinas, variantes de widgets, marcadores de lista y visualizador predeterminado. Se pueden añadir temas personalizados mediante archivos theme.toml y theme.qss en ~/.config/tide/themes/, o crearlos a través de un editor de temas integrado que previsualiza los cambios en vivo y los guarda como temas reales. Otras herramientas avanzadas incluyen un constructor de franjas para la barra del reproductor, un editor de mapas de teclas para reasignar atajos y un editor de glifos para los símbolos de transporte. La compatibilidad de fuentes varía: YouTube Music ofrece búsqueda además de listas de reproducción, canciones, álbumes, artistas, suscripciones, inicio, listas, estados de ánimo e historial de cuenta, y requiere importar cookies; Spotify admite búsqueda y biblioteca, pero la reproducción actualmente es silenciosa debido a un cambio de seguridad de la plataforma que afecta el descifrado de librespot; Subsonic/Navidrome necesita una URL de servidor y credenciales; los archivos locales necesitan un directorio de música; SoundCloud, Bandcamp y Mixcloud solo admiten búsqueda. Las funciones del día a día incluyen cola con reproducción automática tipo radio, letras sincronizadas con modo karaoke (primero los tiempos de YouTube, con LRClib como respaldo), vista de historial, temporizador de apagado, botón de me gusta, reanudación al iniciar, precarga de flujo, comportamiento de instancia única, un mini reproductor, un modo de pantalla completa y una página de canción con recuentos de reproducciones/me gusta, créditos, canciones relacionadas y comentarios de YouTube en hilos con marcas de tiempo en las que se puede hacer clic. El reporte opcional de reproducciones a YouTube Music está desactivado por defecto y se pregunta explícitamente durante la configuración. Un rack de FX (Ctrl+8) proporciona un ecualizador de 10 bandas, preajustes de reverberación, estantes de graves/agudos, normalización de sonoridad, amplitud estéreo, compresor y efectos como chorus, flanger, phaser, tremolo, exciter, crossfeed para auriculares y lofi. La velocidad de reproducción va de 0.5x a 2x con cambio de tono por defecto y una opción para preservar el tono. Diez renderizadores de visualización usan captura de PipeWire. El acento adaptativo y un fondo reactivo a los graves son valores predeterminados de modern; el pulso de graves aprende cada pista grabando la salida del detector y reproduciéndola contra el reloj del reproductor en reproducciones posteriores. La integración con el sistema incluye MPRIS2 para teclas multimedia y paneles de escritorio, una bandeja con ocultar al cerrar, presencia enriquecida opcional en Discord con modo de letra en vivo, scrobbling opcional a ListenBrainz y una comprobación diaria de actualizaciones contra las versiones de GitHub. La instalación se realiza vía AUR (yay -S tide) en Arch, un envío a Flatpak en revisión, o compilación manual con makepkg. El Flatpak se ejecuta en el runtime de KDE 6.11 con su propio libmpv y requiere overrides para el acceso a cookies del navegador y carpetas de música adicionales. El inicio de sesión se basa en la importación de cookies del navegador (familia Chromium o Firefox, incluidas instalaciones Flatpak/Snap) ya que Google bloquea OAuth para los endpoints de YouTube Music; una actualización con un clic vuelve a importarlas cuando las sesiones caducan. Las raíces de configuración y caché son 0700, los archivos de credenciales 0600 y las escrituras son atómicas. Licencia GPL-3.0-or-later.