Contenido del curso

Manos a la obra con nuestro proyecto

Rutas de login y logout en Laravel Breeze

Resumen

Configurar las rutas de autenticación en Laravel Breeze te permite construir un sistema de inicio de sesión limpio y enfocado en un solo usuario administrador. Esta personalización es ideal para proyectos dirigidos a emprendedores, abogados o arquitectos que gestionan su plataforma de forma individual.

¿Cómo personalizar las rutas de autenticación en Laravel?

Cuando instalas un sistema de autenticación con Breeze, Laravel genera por defecto rutas para registro, recuperación de contraseña, restablecimiento y verificación. Para un proyecto administrado por una única persona, la mayoría sobran.

En el archivo de rutas hermano del principal, encontrarás la configuración de inicio de sesión. Allí puedes eliminar todo lo que no necesites y conservar únicamente lo esencial:

  • La ruta que muestra el formulario de inicio de sesión para usuarios invitados.
  • La ruta que procesa el inicio de sesión.
  • La ruta de cierre de sesión para usuarios autenticados.

¿Qué diferencia hay entre rutas para invitados y rutas autenticadas? Las rutas de invitados (guest) solo son accesibles si no has iniciado sesión, como el formulario de login. Las rutas autenticadas requieren que el usuario ya esté logueado, como el cierre de sesión.

Organiza estas rutas en líneas limpias dentro de su grupo correspondiente y guarda. Al actualizar el navegador, el sistema sigue funcionando: puedes iniciar sesión y cerrarla sin problemas.

¿Por qué reducir las rutas a solo login y logout?

La idea es entregar un sistema pensado para una única persona administradora. No necesitas registro público porque no habrá nuevos usuarios autoregistrándose, y tampoco recuperación automática de contraseña si el acceso lo gestiona directamente quien lo usa.

Este enfoque reduce superficie de ataque, simplifica el mantenimiento y deja el código más legible.

¿Cómo funciona la contraseña por defecto en Laravel?

Al correr los seeders, Laravel utiliza el archivo UserFactory para generar usuarios de prueba. Si revisas ese archivo, vas a notar que el campo password contiene un hash encriptado, pero ese hash representa simplemente la palabra password.

Por eso puedes copiar cualquier email registrado en la base de datos y entrar usando password como contraseña. El sistema valida correctamente y te deja pasar.

¿Qué es un factory en Laravel? Es una clase que define cómo generar datos falsos para tus modelos. Se usa en pruebas y seeders para poblar la base de datos rápidamente.

¿Cómo se compilan los archivos del frontend con webpack.mix.js?

Durante la instalación de Breeze, Laravel ejecuta una compilación de los archivos del lado del cliente. Esa compilación está definida en el archivo webpack.mix.js, que actúa como puente entre tu código fuente y los archivos públicos que sirve el navegador.

La lógica es directa:

  • Lo que está en resources/js/app.js se compila y se guarda en public/js/app.js.
  • Lo que está en resources/css/app.css se compila y se guarda en public/css/app.css.
  • El sistema incluye Tailwind CSS como framework de estilos para todo el proyecto.

¿Qué son los componentes Blade en el sistema de login?

Breeze genera vistas reutilizables basadas en componentes Blade. Dentro de la carpeta de vistas vas a encontrar la vista de login y, junto a ella, componentes individuales para el logo, los mensajes de validación, los botones y los campos de entrada.

Usar un componente significa que cada elemento vive en su propio archivo. Si quieres cambiar el logo, modificas solo el componente del logo. Si quieres ajustar los botones, vas al componente de botón. Esa modularidad te da control fino sobre la interfaz sin tocar la vista principal.

Tailwind CSS se integra de fábrica en estos componentes, así que las clases utilitarias ya están disponibles para personalizar colores, espaciados y tipografía.

Habilidades y conceptos clave de la clase

Para aprovechar bien esta configuración, conviene tener claros estos elementos:

  • Rutas guest y auth: agrupaciones que controlan acceso según estado de autenticación del usuario.
  • UserFactory: clase que genera usuarios falsos con contraseña encriptada equivalente a password.
  • webpack.mix.js: archivo de configuración que define cómo se compilan los assets de frontend.
  • Tailwind CSS: framework de utilidades CSS incluido por defecto en Breeze.
  • Componentes Blade: archivos modulares que encapsulan piezas de interfaz reutilizables.

Elimina las rutas de registro, recuperación y verificación, conserva solo login y logout, y tendrás una base limpia para construir el resto del proyecto. ¿Qué otras rutas crees que deberías deshabilitar en un sistema administrado por una sola persona? Cuéntame en los comentarios.