Tu Colección Privada de YouTube
TubeVault es una página estática que actúa como un servidor multimedia, permitiéndote acceder y organizar tus videos de YouTube en una interfaz similar a servicios como Plex o Jellyfin. Con TubeVault, puedes crear tu propia colección de películas, series y videos personales, accediendo a ellos de manera fácil y rápida.
🎯 Organización Inteligente
- Películas, Series y Videos Personales
- Búsqueda por título, director o actores
- Metadata rica (director, actores, sinopsis)
🎨 Interfaz Moderna
- Diseño responsive
- Pósters de TMDB
- Interfaz estilo streaming
💾 Optimización
- Caché local
- Carga lazy de imágenes
- Actualización automática
Python
- Se requiere Python 3.x
- Descárgalo de python.org si no está instalado
- Verifica la instalación con
python3 --version
- Ve a Google Cloud Console
- Crea un nuevo proyecto
- Habilita YouTube Data API v3
- En el panel de "Credenciales":
- Crea una API Key
- Configura OAuth 2.0:
- Crea un ID de Cliente OAuth 2.0
- En "Orígenes autorizados de JavaScript" agrega:
http://localhost:8000 http://127.0.0.1:8000
- En "URI de redireccionamiento autorizados" agrega:
http://localhost:8000/oauth2callback http://127.0.0.1:8000/oauth2callback
- Crea una cuenta en TMDB
- Ve a la configuración de API
- Solicita una API Key
- Clona el repositorio
- Renombra
scripts/config.example.jsascripts/config.js - En
scripts/config.js, reemplaza los valores con tus claves:
const CONFIG = {
youtubeApiKey: 'TU_YOUTUBE_API_KEY', // API Key de YouTube de Google Cloud Console
oauthClientId: 'TU_OAUTH_CLIENT_ID', // ID de Cliente OAuth 2.0 de Google Cloud Console
channelId: 'TU_CHANNEL_ID', // ID de tu canal de YouTube
tmdbApiKey: 'TU_TMDB_API_KEY', // API Key de TMDB
updateInterval: 3600000, // Intervalo de actualización en ms
unlistedVideos: [] // No es necesario modificar
};- Abre una terminal en el directorio del proyecto
- Ejecuta el comando:
python3 -m http.server 8000
- Abre tu navegador y ve a
http://localhost:8000
Para que TubeVault pueda procesar correctamente tus videos, usa este formato en la descripción:
[DIRECTOR: Nombre del Director]
[ACTORES: Actor 1, Actor 2, Actor 3]
[SYNOPSIS: Descripción de la película][TEMPORADA: 1]
[UNIDAD: 3]
[EPISODIO: 5]
[SYNOPSIS: Descripción del episodio][UNIDAD: 2]
[EPISODIO: 1]
[SYNOPSIS: Descripción de la lección]- Los tags deben estar en MAYÚSCULAS y entre corchetes
- La sinopsis puede contener múltiples líneas
- Para series y cursos:
- TEMPORADA es opcional
- UNIDAD agrupa episodios en secciones
- EPISODIO determina el orden de reproducción
- La API de YouTube tiene un límite de 10,000 unidades diarias
- Usar con contenido propio o autorizado
- Los videos privados se actualizan automáticamente
Este proyecto fue desarrollado con la asistencia de Claude (Anthropic). Como tal:
- El código puede optimizarse
- Pueden existir mejores prácticas
- Se aceptan mejoras y sugerencias
Si encuentras útil este proyecto y quieres apoyar su desarrollo:
¡Tu apoyo ayuda a mantener y mejorar TubeVault!
¡Las contribuciones son bienvenidas!
- 🐛 Reporta bugs
- 💡 Sugiere mejoras
- 🔧 Envía pull requests
MIT License - ver LICENSE.md
Este proyecto es para uso personal y educativo. No fomentes la infracción de derechos de autor.
Hecho con ❤️ usando YouTube Data API y TMDB