Sobre el proyecto

Go Music DL es una herramienta de búsqueda y descarga de música escrita en Go, que ofrece tres modos de uso: interfaz web, terminal TUI y aplicación de escritorio. Además de la búsqueda y descarga de canciones individuales, admite búsqueda y análisis de listas de reproducción, navegación por categorías de listas, mis listas, búsqueda y análisis de álbumes, así como visualización y procesamiento por lotes de pistas de listas/álbumes completos. Capacidades principales: - Búsqueda agregada multiplataforma, que cubre más de 10 plataformas como NetEase Cloud, QQ Music, Kugou, Kuwo, Migu, Qianqian, Soda Music, 5sing, Jamendo, JOOX, Bilibili y Apple Music, con soporte para búsqueda concurrente de múltiples fuentes. - Admite tres tipos de búsqueda: canciones individuales, listas de reproducción y álbumes; puede pegar directamente enlaces de compartición de canciones/listas/álbumes para identificar automáticamente la fuente y acceder a los detalles. - Análisis de audio sin pérdida: NetEase Cloud, QQ Music y Bilibili admiten descarga FLAC sin pérdida; Kugou admite FLAC para canciones normales. - Soporte dual de formato de letras: NetEase Cloud, QQ y Kugou admiten visualización LRC palabra por palabra de texto original/traducción/romaji y resaltado palabra por palabra estilo karaoke. - Vista previa, descarga de letras y portadas, detección de rango para mostrar tamaño y bitrate, y filtrado de recursos de pago. - Listas de reproducción locales personalizadas: puede crear carpetas de favoritos locales, agregar canciones de diferentes plataformas y persistir datos. - Categorías de listas y mis listas: en la web, puede navegar por listas oficiales por plataforma; tras iniciar sesión, puede leer listas personales/favoritas. - Inicio de sesión por escaneo de código con Cookie: el panel de configuración admite escaneo para obtener cookies de NetEase Cloud, QQ, Kugou y Bilibili, guardándolas automáticamente; el escaneo de Soda Music aún no funciona debido a la firma de control de riesgos. - Gestión de música local: lee el directorio de descargas local, admite carga, completado de metadatos, lectura de portadas/letras, eliminación, y puede participar como fuente de búsqueda de primera clase; la lista se carga paginada y se cachean escaneos y metadatos. - Cambio de fuente: busca versiones alternativas en otras plataformas según similitud de nombre de canción/artista, proximidad de duración y prueba de reproducción, con soporte para cambio por lotes. - Recomendaciones diarias de listas: disponibles en web y TUI, agregando NetEase Cloud, QQ, Kugou y Kuwo. - Sincronización WebDAV: puede subir archivos descargados a WebDAV simultáneamente. - Los botones relacionados con generación de video se migran a la configuración web para gestión, desactivados por defecto. Despliegue y uso: - Aplicación de escritorio: descargue music-dl-desktop-rust.exe o music-dl-desktop-go.exe desde Releases, descomprima y ejecute; compatible con Windows, macOS y Linux. - Móvil: Releases ofrece APK para Android (arm64-v8a recomendado, x86_64, paquete compatible sin fragmentación); el APK incluye ffmpeg y ffprobe; iOS ofrece ipa pendiente de firma, y con certificado puede proporcionar paquetes firmados. - Modo web: ./music-dl web, montado por defecto en la ruta /music, con --base-path para montar en un subdirectorio, incluyendo ejemplo de proxy inverso Nginx. Las funciones normales no requieren inicio de sesión; solo las operaciones de configuración del sistema requieren inicio de sesión de administrador, creando la cuenta de administrador mediante un token de inicialización de un solo uso impreso en la terminal. - Modo TUI: ./music-dl -k "palabra clave", con teclas como flechas para moverse, espacio para seleccionar, a para seleccionar todo, r para cambiar fuente, Enter para descargar, w para recomendaciones diarias, q para salir. - Docker: ofrece docker-compose.yml (imágenes precompiladas), docker-compose.dev.yml (construcción local) y docker run; monta ./data por defecto para persistir descargas, configuración y favoritos, ejecutándose como usuario no root. - CLI admite parámetros como especificar fuente de búsqueda (-s), directorio de descarga (-o), incluir portada y letras (--cover --lyrics). Stack técnico: dependencia principal en la biblioteca de plataformas musicales music-lib, CLI con Cobra, Web con Gin, TUI con Bubble Tea, escritorio con Rust + Tao/Wry o Go + webview2, móvil con Go + Gio. Los datos se almacenan en el directorio data, incluyendo downloads, video_output, cookies.json y settings.db (SQLite, para configuración/cookies/listas personalizadas). El proyecto usa licencia AGPL-3.0, y el README declara que es solo para aprendizaje e intercambio técnico; los recursos musicales descargados deben eliminarse dentro de 24 horas.