🎬 Un catálogo de películas interactivo y moderno con selección, filtrado y compartición por WhatsApp.
- Interfaz Moderna: Diseño minimalista con animaciones suaves y tipografía definida
- Catálogo Interactivo: Búsqueda, filtrado por categoría y ordenamiento
- Base de Datos Completa: Integración con TMDB API (1,000,000+ películas)
- Carátulas Oficiales: Imágenes en alta calidad de TMDB
- Búsqueda Multi-idioma: Busca en español e inglés
- Selección de Películas: Sistema de selección múltiple con carrito flotante
- Copiar Lista: Genera listas numeradas para copiar al portapapeles
- Modo Administración: Panel para agregar, editar y eliminar películas
- Drag & Drop: Subida de carátulas arrastrando archivos
- Responsive: Diseño adaptativo para todos los dispositivos
- Accesibilidad: Soporte completo para lectores de pantalla y navegación por teclado
Abre index.html para navegar el catálogo, buscar películas y seleccionarlas para compartir.
Abre modders.html para gestionar el catálogo:
- Agregar películas manualmente
- Subir carátulas mediante drag & drop
- Editar detalles de películas existentes
- Exportar la base de datos (catalogo.json)
- Limpiar cambios locales
docs/
├── index.html # Vista principal de usuario
├── modders.html # Panel de administración
├── styles.css # Estilos y animaciones
├── app.js # Lógica de la aplicación
├── catalogo.json # Base de datos de películas
└── caratulas/ # Carpeta para imágenes de carátulas (opcional)
- HTML5: Estructura semántica
- CSS3: Estilos modernos con variables CSS y animaciones
- JavaScript (ES6+): Lógica sin frameworks
- FontAwesome: Iconos
- Google Fonts: Tipografías Inter y Outfit
- GitHub Actions: Automatización de despliegue
- GitHub Pages: Hosting estático
Para acceder a la base de datos completa de películas con carátulas oficiales:
- Regístrate gratis en TMDB: https://www.themoviedb.org/signup
- Obtén tu API Key:
- Ve a https://www.themoviedb.org/settings/api
- Crea una nueva API key (Gratis para uso personal)
- Copia tu API key
- Configura en app.js (línea 12):
const TMDB_API_KEY = "TU_API_KEY_AQUI"; // Reemplaza con tu key
Beneficios de usar TMDB API:
- ✅ Base de datos de más de 1,000,000 de películas
- ✅ Carátulas oficiales en alta calidad
- ✅ Búsqueda en español e inglés
- ✅ Información detallada (año, género, rating)
- ✅ Actualización automática de películas
Sin TMDB API:
- Solo mostrará tu base de datos local (
catalogo.json) - Las carátulas deben estar en la carpeta
caratulas/
El catálogo se carga desde catalogo.json. Para actualizarlo:
- Modifica el catálogo en modo administración
- Exporta la base de datos usando el menú de opciones
- Reemplaza el archivo
catalogo.jsoncon la versión exportada
Modifica las variables CSS en styles.css (líneas 1-36):
:root {
--bg-dark: #f5f0e8;
--accent: #d4a574;
--text-main: #2d231a;
/* ... */
}Los tamaños de fuente se configuran con clamp() para diseño fluido:
--font-h1: Títulos principales--font-card-title: Títulos de carátulas--font-body: Texto general
- Sanitización de HTML para prevenir XSS
- Sin uso de
eval()o funciones peligrosas - Validación de inputs de usuario
- Manejo seguro de URLs de objetos con cleanup de memoria
- Etiquetas ARIA completas
- Navegación por teclado
- Contraste de colores WCAG AA
- Soporte para lectores de pantalla
- Roles semánticos HTML5
- Chrome/Edge: ✅
- Firefox: ✅
- Safari: ✅
- Navegadores móviles: ✅
- Cuenta en GitHub (gratuita en github.com)
- Git instalado en tu computadora
- Los archivos del proyecto listos
Windows:
- Descarga Git desde: https://git-scm.com/download/win
- Ejecuta el instalador y sigue las instrucciones
- Verifica instalación: Abre terminal y escribe
git --version
Mac:
brew install gitLinux:
sudo apt install gitAbre una terminal en la carpeta del proyecto:
cd C:\Users\Admin\Documents\GitHub\TESTERInicializa Git:
git initAgrega todos los archivos:
git add .Haz el primer commit:
git commit -m "Initial commit - Ky! Movies con TMDB API"- Ve a https://github.com
- Inicia sesión o crea una cuenta
- Click en el botón "+" → New repository
- Configura el repositorio:
- Repository name:
ky-movies(o el nombre que prefieras) - Description: "Catálogo de películas con TMDB API"
- Public/Private: Public (necesario para GitHub Pages gratuito)
⚠️ NO marques "Initialize this repository with a README"
- Repository name:
- Click en Create repository
Copia la URL del repositorio (es algo como: https://github.com/TU_USUARIO/ky-movies.git)
En la terminal, ejecuta:
git remote add origin https://github.com/TU_USUARIO/ky-movies.gitCambia el nombre de la rama a main:
git branch -M mainSube los archivos:
git push -u origin main📝 Si te pide usuario y contraseña:
- Usuario: Tu usuario de GitHub
- Contraseña: NO uses tu contraseña normal, usa un Personal Access Token:
- Ve a GitHub → Settings → Developer settings → Personal access tokens → Tokens (classic)
- Click "Generate new token (classic)"
- Selecciona permisos: repo (todos los checkboxes bajo repo)
- Genera y copia el token
- Usa el token como contraseña
- Ve a tu repositorio en GitHub
- Click en la pestaña Settings
- En el menú lateral, click en Pages
- En Build and deployment:
- Source: Selecciona GitHub Actions
- Click en Save
🎉 El workflow se ejecutará automáticamente (verás un check verde en la pestaña Actions)
- Ve a la pestaña Actions en tu repositorio
- Espera a que el workflow termine (puede tardar 1-2 minutos)
- Cuando veas ✅ verde, tu sitio está desplegado
- Ve a Settings → Pages y verás la URL de tu sitio:
https://TU_USUARIO.github.io/ky-movies/
Error: "remote origin already exists"
git remote remove origin
git remote add origin https://github.com/TU_USUARIO/ky-movies.gitError: "failed to push some refs"
git pull origin main --allow-unrelated-histories
git push -u origin mainWorkflow falla:
- Verifica que los archivos estén en la carpeta
docs/ - Verifica que
.github/workflows/pages.ymlexista - Revisa el log del error en la pestaña Actions
Sitio no carga:
- Espera 5-10 minutos después del despliegue
- Verifica que el repositorio sea Public
- Limpia el caché del navegador
TESTER/
├── docs/ # 📁 Carpeta raíz del sitio
│ ├── index.html # 📄 Página principal
│ ├── modders.html # 📄 Panel de administración
│ ├── styles.css # 🎨 Estilos
│ ├── app.js # ⚡ JavaScript (con TMDB API key)
│ ├── catalogo.json # 📊 Base de datos local (opcional)
│ └── caratulas/ # 🖼️ Imágenes (opcional)
├── .github/ # 📁 Configuración GitHub
│ └── workflows/
│ └── pages.yml # 🔄 Workflow automático
├── _config.yml # ⚙️ Config Jekyll bypass
├── .gitignore # 🚫 Archivos ignorados
└── README.md # 📖 Documentación
- Git instalado
- API key de TMDB configurada en
app.js - Todos los archivos en carpeta
docs/ -
.github/workflows/pages.ymlexiste - Repositorio en GitHub creado (Public)
- Git init y commit hechos
- Git remote conectado
- Push exitoso
- GitHub Pages configurado (GitHub Actions)
- Workflow ejecutado con éxito
Tu sitio estará disponible en:
https://TU_USUARIO.github.io/ky-movies/
Características activas:
- ✅ Base de datos completa de TMDB (1,000,000+ películas)
- ✅ Carátulas oficiales en alta calidad
- ✅ Búsqueda en español e inglés
- ✅ 19 categorías de películas
- ✅ Selección y copia de listas
- ✅ Panel de administración
- ✅ Responsive en todos los dispositivos
- ✅ Despliegue automático con cada cambio
Para actualizar el sitio:
# Modifica archivos
git add .
git commit -m "Descripción del cambio"
git pushEl workflow se ejecutará automáticamente y desplegará los cambios.
Este proyecto es de código abierto y está disponible para uso personal y educativo.
Las contribuciones son bienvenidas. Por favor:
- Fork el proyecto
- Crea una rama para tu feature
- Commit tus cambios
- Push a la rama
- Abre un Pull Request
Desarrollado con ❤️ para gestionar catálogos de películas de manera sencilla y moderna.