- Introducción
- Funcionalidades del Proyecto y Tecnologías Utilizadas
- Guía de Instalación
- Guía de Uso
- Enlace a la Documentación
- Conclusión
- Contribuciones, Agradecimientos, Referencias
- Licencias
- Contacto
CineReview es una plataforma web diseñada para los amantes del cine. Permite a los usuarios escribir y leer reseñas de películas, crear listas personalizadas de películas, y seguir a otros usuarios para ver sus recomendaciones y críticas.
La necesidad de una plataforma centralizada donde los cinéfilos puedan compartir sus opiniones y descubrir nuevas películas nos llevó a desarrollar CineReview. La API subyacente proporciona un backend robusto y escalable para soportar estas funcionalidades.
- Crear una plataforma donde los usuarios puedan interactuar y compartir sus opiniones sobre películas.
- Proveer una interfaz intuitiva y atractiva para los usuarios.
- Asegurar una arquitectura backend que sea robusta, segura y fácil de mantener.
Como apasionados del cine, quisimos crear una herramienta que no solo fuera útil para nosotros, sino para cualquier persona que comparta el mismo amor por el séptimo arte.
- Gestión de Películas: Añadir, actualizar, eliminar y buscar películas.
- Listas de Películas Personalizadas: Crear y gestionar listas de películas.
- Reseñas de Usuarios: Escribir, actualizar, eliminar y leer reseñas de películas.
- Autenticación y Autorización: Registro e inicio de sesión de usuarios, protección de endpoints mediante JWT.
- Interacciones Sociales: Seguir y dejar de seguir a otros usuarios.
- Backend:
- Java 17
- Spring Boot 3.2.2
- Hibernate/JPA
- MySQL
- Maven
- Seguridad:
- Spring Security
- JWT (JSON Web Tokens)
- Frontend: (Pendiente de desarrollo, centrado en el backend por ahora)
- Herramientas de Desarrollo:
- Lombok
- Spring Boot DevTools
- JDK 17
- Maven
- MySQL
-
Clonar el repositorio
bash
git clone https://github.com/dblancou/ApiLetterboxdProyectoFinal.git
cd ApiLetterboxdProyectoFinal
-
Configurar la base de datos
Crear una base de datos MySQL llamada
ApiProyectoFinal
.CREATE DATABASE ApiProyectoFinal;
-
Configurar las propiedades de la aplicación
Edita el archivo application.properties con tus credenciales de MySQL.
-
Compilar y ejecutar la aplicación
- Películas
- Crear:
POST /api/films
- Obtener por ID:
GET /api/films/{id}
- Listar:
GET /api/films
- Actualizar:
PUT /api/films/{id}
- Eliminar:
DELETE /api/films/{id}
- Crear:
- Listas de Películas
- Crear:
POST /api/movieLists
- Obtener por ID:
GET /api/movieLists/{id}
- Listar:
GET /api/movieLists
- Actualizar:
PUT /api/movieLists/{id}
- Eliminar:
DELETE /api/movieLists/{id}
- Crear:
- Reseñas
- Crear:
POST /api/reviews
- Obtener por ID:
GET /api/reviews/{id}
- Listar:
GET /api/reviews
- Actualizar:
PUT /api/reviews/{id}
- Eliminar:
DELETE /api/reviews/{id}
- Crear:
- Usuarios
- Registro:
POST /auth/register
- Inicio de Sesión:
POST /auth/login
- Obtener por nombre de usuario:
GET /api/users/public/{username}
- Seguir usuario:
POST /api/users/{id}/follow
- Dejar de seguir usuario:
DELETE /api/users/{id}/unfollow
- Registro:
Para más detalles sobre el uso de la API y sus endpoints, visita la documentación completa.
CineReview es una plataforma diseñada para facilitar la interacción entre los amantes del cine, permitiéndoles compartir y descubrir opiniones sobre películas. El proyecto está en constante desarrollo y estamos abiertos a contribuciones y sugerencias para mejorarlo.
Agradecemos cualquier tipo de contribución, ya sea en forma de código, reporte de errores o sugerencias. Para contribuir, por favor, abre un issue o haz un pull request en el repositorio.
Agradecemos a nuestros profesores y compañeros del ciclo de Desarrollo de Aplicaciones Multiplataforma (DAM) por su apoyo y guía durante el desarrollo de este proyecto.
Este proyecto está licenciado bajo la Licencia MIT. Para más detalles, consulta el archivo LICENSE
.
Para cualquier consulta o sugerencia, puedes contactarnos a través de:
- Nombre del Alumno: Daniel Blanco Guerrero
- Correo Electrónico: danielblancow@gmail.com
- GitHub: https://github.com/dblancou