MediaHub es una aplicación desarrollada en Laravel que permite a los usuarios gestionar sus colecciones personales de películas, series y videojuegos. Los usuarios pueden crear listas personalizadas, valorar contenido y organizar su entretenimiento de manera eficiente.
- Desarrollar una aplicación con Laravel, Breeze y Blade.
- Implementar autenticación de usuarios y control de acceso.
- Aplicar roles a los usuarios para bloquear rutas y acciones.
- Permitir a los usuarios crear, modificar y gestionar colecciones.
- Agregar funcionalidades de reseñas y valoraciones.
- Integrar un sistema de categorías y filtrado para mejorar la navegación.
- Aplicar migraciones, seeders y factories para la base de datos.
- Diseñar una interfaz atractiva con Tailwind CSS.
Tabla | Descripción |
---|---|
users | Almacena la información de los usuarios registrados. |
media | Contiene películas, series y videojuegos con sus respectivos datos. |
categories | Clasificación de los diferentes tipos de contenido. |
collections | Listas personalizadas creadas por los usuarios. |
reviews | Reseñas y valoraciones de los usuarios sobre el contenido. |
watchlist | Contenido guardado para ver más tarde. |
platforms | Plataformas donde está disponible el contenido (Netflix, PS5, Steam, etc.). |
media_platform | Relación muchos a muchos entre medios y plataformas. |
- Laravel 12 (Framework Backend)
- Laravel Breeze (Autenticación)
- Blade + Tailwind CSS (Frontend)
- MySQL (Base de datos)
- Eloquent ORM (Gestión de modelos)
- Factories & Seeders (Generación de datos de prueba)
- Middleware (Control de acceso y permisos)
- 🔐 Autenticación y gestión de usuarios con Laravel Breeze.
- 📂 Creación y gestión de colecciones personalizadas.
- ⭐ Valoración y reseñas sobre cada contenido.
- 📜 Listas de reproducción y favoritos.
- 🔎 Búsqueda y filtrado por categorías y plataformas.
- 📊 Visualización de estadísticas de usuario.
GET / # Página de inicio
GET /login # Iniciar sesión
GET /register # Registro de usuario
GET /dashboard # Panel de usuario
GET /media # Listado de contenido
GET /media/{id} # Detalle de un contenido
POST /collections # Crear colección
GET /watchlist # Listado de pendientes
POST /reviews # Agregar reseña
Este es un proyecto basado en Laravel que utiliza varias herramientas como npm
, Vite
y PHP
. Para instalar y configurar el proyecto, sigue los siguientes pasos.
Antes de comenzar, asegúrate de tener las siguientes herramientas instaladas en tu máquina:
- PHP (se recomienda versión 8.0 o superior)
- Composer (para gestionar dependencias de PHP)
- Node.js (se recomienda versión LTS)
- npm (gestor de paquetes de Node.js)
Primero, clona el repositorio a tu máquina local usando Git:
git clone https://github.com/Sante21/mediaHub.git
cd mediaHub
Instala las dependencias de PHP utilizando Composer. Esto descargará las bibliotecas necesarias para ejecutar Laravel.
composer install
Instala las dependencias de JavaScript y herramientas como Vite utilizando npm. Esto descargará las dependencias necesarias para el frontend.
npm install
Configura la conexión a la base de datos en el archivo .env. Asegúrate de definir las variables correspondientes, como:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=nombre_de_base_de_datos
DB_USERNAME=tu_usuario
DB_PASSWORD=tu_contraseña
Ahora que todas las dependencias están instaladas y configuradas, puedes iniciar el servidor de desarrollo de Laravel con el siguiente comando:
composer run dev