En esta guía levantarás la base de datos MySQL con Docker, arrancarás el backend Spring Boot y el frontend Angular, y harás tu primera llamada autenticada a la API — todo en menos de 10 minutos. Al terminar tendrás el sistema completamente funcional corriendo en tu máquina local, con datos de prueba precargados y un token JWT listo para explorar el resto de los endpoints.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/interezante456-pixel/Miercoles-Proyecto/llms.txt
Use this file to discover all available pages before exploring further.
Prerrequisitos
Asegúrate de tener instalados los siguientes programas antes de comenzar:| Herramienta | Versión mínima | Para qué se usa |
|---|---|---|
| Docker Desktop | Cualquier versión reciente | Levantar MySQL y phpMyAdmin |
| Java JDK | 21 | Compilar y ejecutar el backend Spring Boot |
| Node.js | 20+ | Instalar dependencias y servir el frontend Angular |
| Git | Cualquier versión | Clonar el repositorio |
Puertos utilizados por defecto:
4200— Frontend Angular8080— Backend Spring Boot API (http://localhost:8080/api)3306— MySQL8081— phpMyAdmin (opcional, para inspeccionar la base de datos)
Pasos
Clonar el repositorio
Clona el repositorio del proyecto en tu máquina local:El repositorio contiene tres carpetas principales:
backend/ (Spring Boot), Frontend/ (Angular) y database/ (scripts SQL de esquema y datos semilla).Levantar MySQL con Docker Compose
Desde la raíz del repositorio, inicia el contenedor de MySQL. Docker Compose ejecutará automáticamente los scripts Opcionalmente, también puedes levantar phpMyAdmin para inspeccionar la base de datos en Espera unos segundos a que MySQL pase el healthcheck. Puedes verificar el estado con:La columna
database/schema.sql y database/data.sql para crear la base de datos tienda_db y cargar los datos de prueba:http://localhost:8081:Status del servicio mysql debe mostrar healthy.Iniciar el backend Spring Boot
Abre una nueva terminal, entra a la carpeta El backend estará listo cuando veas en la consola una línea similar a:La API quedará disponible en
backend/ y ejecuta la aplicación con Maven Wrapper:http://localhost:8080/api.Iniciar el frontend Angular
Abre otra terminal nueva, entra a la carpeta Una vez compilado, Angular indicará:La aplicación web estará disponible en
Frontend/, instala las dependencias y arranca el servidor de desarrollo:http://localhost:4200.Iniciar sesión en la aplicación
Abre tu navegador en
Al hacer login el sistema almacenará el token JWT en el almacenamiento local del navegador bajo la clave
http://localhost:4200/login e ingresa con cualquiera de las cuentas de prueba precargadas:| Usuario | Contraseña | Rol |
|---|---|---|
admin | admin123 | ADMIN |
jperez | admin123 | VENDEDOR |
mgarcia | admin123 | ALMACENERO |
tienda_token y te redirigirá al Dashboard.Hacer tu primera llamada a la API con cURL
Puedes verificar que la API funciona correctamente realizando una petición de login directamente desde la terminal. Usa las credenciales del usuario administrador:La API responderá con un objeto JSON que incluye tu access token (válido 24 horas) y el refresh token (válido 7 días):Copia el valor del campo
token y úsalo como Bearer en el header Authorization para llamar a cualquier endpoint protegido:¿Qué sigue?
Ahora que el sistema está corriendo, te recomendamos:- Revisar la guía de Autenticación para entender cómo funcionan los tokens JWT y cómo usarlos desde JavaScript o Angular.
- Explorar los módulos desde el Dashboard en
http://localhost:4200. - Consultar la documentación completa de la API REST para ver todos los endpoints disponibles por módulo.