Dependencias - FactoriaF5-Asturias/project-p5-digital-academy-team3-restaurant-backend GitHub Wiki
Dependencias
Este inventario recoge las dependencias y herramientas declaradas en el proyecto. Las versiones de los componentes gestionados por Spring Boot corresponden a Spring Boot 4.1.1; las demás se indican según la versión resuelta por Maven.
Testing
- Spring Boot Test 4.1.1: aporta utilidades generales para tests unitarios e integración.
- JUnit Jupiter 6.0.3: framework de ejecución y aserciones de los tests.
- Mockito 5.23.0: simula dependencias externas para aislar la lógica en tests unitarios.
- Spring Boot WebMVC Test 4.1.1: aporta utilidades de pruebas MVC, incluido MockMvc.
- Testcontainers 2.0.5: integra los tests con contenedores, incluido PostgreSQL. La integración de Spring Boot usa Spring Boot Testcontainers 4.1.1.
- JaCoCo Maven Plugin 0.8.12: instrumenta los tests y genera el informe de cobertura.
Ficheros
Firebase Admin SDK 9.10.0: SDK administrativo de Firebase. El proyecto no incluye una dependencia específica de Firebase Storage.- Apache PDFBox 3.0.8: biblioteca para trabajar con documentos PDF.
Limpieza de código
- Lombok 1.18.46: reduce código repetitivo y también está configurado como procesador de anotaciones.
- MapStruct 1.6.3: genera mapeadores entre entidades y DTOs. El compilador configura sus procesadores de anotaciones junto con Lombok.
Núcleo del backend (API, persistencia, seguridad)
- Spring Boot 4.1.1: base de la aplicación.
- Spring Web 4.1.1: expone la API REST que consumen tablets, app cliente y dashboards.
- Spring Data JPA 4.1.1: capa de persistencia hacia PostgreSQL.
- PostgreSQL Driver 42.7.13: conector necesario para conectar con la base de datos.
- Spring Validation 4.1.1: valida los DTOs de entrada antes de llegar al servicio.
- Spring Security 4.1.1: protege los endpoints según el rol del usuario.
- OAuth2 Resource Server 4.1.1: da soporte a la autenticación con JWT. La aplicación usa
JwtEncoder/JwtDecoderde Spring Security con Nimbus. - JJWT 0.13.0: también está declarado, aunque el código Java actual usa la API JWT de Spring Security y no referencia JJWT.
- Flyway 12.4.0: versiona y migra el esquema PostgreSQL de forma controlada.
Integraciones externas / funcionalidades específicas
- SpringDoc OpenAPI 3.1.0: genera documentación interactiva de la API automáticamente.
- WebSocket 4.1.1: proporciona soporte para comunicación en tiempo real.
- Stripe SDK 33.4.0: permite integrar pagos con tarjeta.
- Spring Boot Mail 4.1.1: proporciona soporte para el envío de correo.
Las dependencias de integración mencionadas arriba están declaradas en el proyecto, pero no se han encontrado referencias a ellas en el código Java actual; por tanto, su presencia no implica que esas funcionalidades estén ya implementadas.
Herramientas de compilación
- Spring Boot Maven Plugin 4.1.1: tareas de empaquetado y ejecución de la aplicación.
- Maven Compiler Plugin 3.15.0: compilación Java y configuración de procesadores de anotaciones.
- JaCoCo Maven Plugin 0.8.12: instrumenta los tests y genera el informe de cobertura.