English | Español
Tidol está diseñado para ser autohospedado con total privacidad. Por seguridad, no se incluyen credenciales, tokens ni listas de proxies en este repositorio.
Para que el sistema funcione, cada usuario debe configurar sus propias variables:
- Entorno: Copia el archivo
.env.examplea.enven la raíz del proyecto.cp .env.example .env
- Proxies (Opcional): Si deseas utilizar la Warp Farm o proxies externos para evitar bloqueos de IP, copia la plantilla de ejemplo:
Edita
cp backend/config/proxies.example.json backend/config/proxies.json
backend/config/proxies.jsoncon tus propias credenciales de proxy.
- Clonar:
git clone https://github.com/ElRoutel/Tidol.git - Backend:
cd backend && npm install- Configura tu
.envcon unJWT_SECRETfuerte.
- Spectra (IA):
cd tidol-spectra- Crea tu entorno virtual:
python -m venv venv - Instala dependencias:
pip install -r requirements.txt
- UI:
cd tidol-ui && npm install && npm run dev
Tidol es una plataforma autohospedada diseñada para revolucionar la gestión y el procesamiento de música digital. Su núcleo combina la potencia de la IA local para el procesamiento de audio con una infraestructura capaz de acceder a una biblioteca virtual de más de 14 millones de pistas provenientes de archivos públicos (Internet Archive).
El proyecto integra el procesamiento pesado de IA en Python (Spectra Engine) con un Backend ágil en Node.js y una interfaz moderna en React, todo protegido por una granja de proxies resiliente para garantizar el flujo constante de datos.
- 🌍 Acceso Masivo: Capacidad de búsqueda e ingesta sobre un catálogo de +14M de canciones, superando bloqueos de IP mediante una "Warp Farm" de proxies rotativos.
- 🤖 Procesamiento Inteligente (Local): Separación de pistas (voces, batería, bajo, otros) usando Facebook Demucs sin depender de APIs externas.
- ✍️ Letras Automáticas: Generación de archivos de letra sincronizada (.lrc) mediante el modelo Faster-Whisper.
- 📊 Análisis Técnico: Detección de BPM, tonalidad (Key) y generación visual de formas de onda para cada track.
- 🎨 Interfaz de Vanguardia: Dashboard reactivo con Tailwind CSS y Framer Motion, diseñado para una experiencia fluida tanto en desktop como en móvil.
- 🧠 DJ Brain: Sistema de recomendación inteligente basado en compatibilidad armónica y rítmica.
| Reproductor (Fullscreen) | Visualización de Análisis de Audio |
|---|---|
![]() |
![]() |
| Gestión de Biblioteca Musical | Vista Móvil Reactiva |
|---|---|
![]() |
![]() |
- Lenguajes: Python 3.10+ / JavaScript (Node.js & React)
- Frontend: React.js, Tailwind CSS, Framer Motion, Lucide Icons
- Backend: Node.js, Express.js, Better-SQLite3, Fluent-FFmpeg
- Motor de IA (Spectra): Python, Faster-Whisper, Facebook Demucs, Librosa, PyTorch
Tip
¿Problemas con el puerto 5173? Si el frontend no se carga correctamente, puedes usar la versión estable accediendo directamente al backend en localhost:3000, que incluye una interfaz funcional integrada.
Important
Tidol es una herramienta para gestionar tu propia biblioteca. Para usar el motor de búsqueda masiva, primero debes configurar la Granja de Proxies (Warp Farm) detallada más abajo.
- Asegúrate de tener Docker y Docker Compose instalados.
- Ejecuta:
docker-compose up --build -d
Frontend: puerto 5173 | Backend: puerto 3000 | Spectra IA: puerto 3001
- Clonar el repositorio:
git clone https://github.com/ElRoutel/Tidol.git
cd Tidol- Dependencias (Backend/Frontend):
cd backend && npm install && cd ..
cd tidol-ui && npm install && cd ..- Motor Spectra (IA):
cd tidol-spectra
python -m venv venv
# Activar venv y luego:
pip install -r requirements.txt
npm install
cd ..Se recomienda configurar los archivos .env en /backend y /tidol-spectra con tus propias preferencias.
En Windows, puedes usar el script automatizado:
Tidol.batNote
Requisitos previos:
- Asegúrate de que Spectra esté ejecutándose en el puerto 3001 antes de iniciar el backend
- El backend se ejecutará en
localhost:3000 - El frontend estará disponible en
localhost:5173
Vital para evitar el baneo de IP al realizar búsquedas masivas.
- Navega a
backend/warp-farm. - Ejecuta
.\setup_farm.bat(Windows). - Selecciona el número de proxies (se recomiendan 7-10). El script generará los perfiles de WireGuard automáticamente.
LimpiarCacheLetras.bat: Sincroniza la DB con los archivos físicos y limpia la caché.FORZAR_ResetLetras.bat: Elimina todas las letras y fuerza la regeneración total.tidol-spectra/check_gpu.py: Ejecuta este script para verificar si tu sistema está aprovechando la aceleración por GPU (NVIDIA/CUDA).
🚀 MVP Funcional | 🚧 En desarrollo activo.
Si buscas soluciones personalizadas de procesamiento de audio con IA o automatización resiliente, hablemos:
- Email: ElRoutel@hotmail.com
- GitHub: @ElRoutel
Personaliza tu experiencia cambiando el default_cover.jpg por la imagen de tu preferencia 🐸




