La autenticación es una de las funcionalidades más importantes de cualquier aplicación web. Durante mucho tiempo, Laravel UI fue la forma “oficial” de incluir un scaffolding básico de autenticación en Laravel, con vistas y controladores listos para usar. Sin embargo, con la llegada de nuevas versiones, ese paquete dejó de recomendarse y dio paso a una alternativa mucho más moderna, flexible y fácil de personalizar: Laravel Breeze.
En este artículo, exploraremos qué es Laravel Breeze, en qué se diferencia de Laravel UI y cómo puede ayudarte a configurar un flujo de autenticación rápidamente en tus proyectos Laravel más recientes, con la información actualizada sobre su instalación y configuración.
Anteriormente, cuando queríamos incorporar un sistema de autenticación básico en Laravel (login, registro, restablecimiento de contraseña, etc.), solíamos utilizar el paquete Laravel UI. Este paquete ofrecía, además de los controladores y rutas de autenticación, frontends con Bootstrap y soporte básico para Vue/React.
Con el paso del tiempo, Laravel UI dejó de ser la opción recomendada por el framework. Se buscaba una solución más moderna y alineada con las tendencias actuales de desarrollo frontend: minimalismo, Tailwind CSS, componentes reutilizables y un diseño más limpio. Fue entonces cuando surgió Laravel Breeze, que es ahora el enfoque oficial y más ligero para añadir rápidamente autenticación y vistas a tu proyecto.
Laravel Breeze es un “starter kit” oficial que proporciona un scaffolding de autenticación sencillo y moderno para proyectos Laravel. Aporta la estructura necesaria para el registro, inicio de sesión, cierre de sesión, restablecimiento de contraseñas, verificación de correo electrónico, etc., sin sobrecargar tu aplicación con funcionalidades innecesarias.
Entre sus principales características, destacan:
Uso de Blade y Tailwind CSS por defecto
Breeze incluye vistas basadas en Blade junto con la potencia y versatilidad de Tailwind CSS, uno de los frameworks CSS más populares del momento.
Totalmente personalizable
Al instalar Laravel Breeze, se publican todos los archivos de Blade, controladores y rutas directamente en tu proyecto, permitiéndote modificar y adaptar libremente el diseño y la lógica sin depender de un paquete externo inamovible.
Dependencia de desarrollo
Breeze se añade a tu proyecto como una dependencia de desarrollo (require-dev
), lo que significa que no añade una carga excesiva a tu aplicación en producción. Eso sí, las vistas, controladores y archivos de configuración se incluyen para que tu autenticación funcione perfectamente en cualquier entorno.
Opciones de stacks adicionales
Aunque el stack por defecto es Blade + Tailwind, existe la posibilidad de instalar Laravel Breeze con Livewire o con Inertia (al usar Inertia, puedes elegir Vue o React para el frontend). Además, también puedes generar un stack API para autenticación en aplicaciones JavaScript modernas.
Scaffolding para APIs
Breeze puede generar un conjunto básico de endpoints de autenticación (registro, inicio de sesión, restablecimiento de contraseñas, etc.) listos para usarse desde cualquier frontend SPA, como Next, Nuxt u otras aplicaciones JavaScript.
Para instalar Laravel Breeze en tu proyecto, asumiendo que ya tienes un proyecto Laravel (recomendablemente en la versión 11 o la más reciente) y que has ejecutado la instalación de dependencias con Composer, el proceso es el siguiente:
Instalar Breeze
composer require laravel/breeze --dev
Ejecutar el instalador
Una vez instalado, ejecuta:
php artisan breeze:install
A partir de aquí, el asistente te preguntará qué stack deseas usar:
Blade (por defecto, con Tailwind)
Vue (usando Inertia)
React (usando Inertia)
Livewire
API
Selecciona la opción que mejor se ajuste a tu proyecto.
Compilar assets (si corresponde) y migrar
Si has seleccionado Blade, Vue o React, necesitarás instalar y compilar los assets:
npm install
npm run dev
Si tu stack es Livewire o API, en principio no será necesario compilar nada (al menos no por defecto; podrías requerirlo si decides personalizar Tailwind u otros assets).
Por último, ejecuta las migraciones:
php artisan migrate
Este paso creará las tablas de autenticación necesarias (users, password resets, etc.) en tu base de datos.
Al finalizar este proceso, tu proyecto contará con rutas y vistas (o componentes) para registro, inicio de sesión, verificación de correo y demás, adaptadas al stack que hayas elegido.
Simplicidad
A diferencia de soluciones más completas como Laravel Jetstream (que incluye gestión de equipos, perfiles de usuario más avanzados, etc.), Breeze se centra en lo esencial. Esto lo hace ideal para proyectos que necesiten un esquema de autenticación básico y directo.
Flexibilidad
Al publicarse todos los archivos directamente en tu proyecto, puedes modificar desde el código CSS hasta la lógica de los controladores y las plantillas. No quedas atado a un paquete remoto ni a estructuras inmodificables.
Código limpio
Las vistas generadas por Breeze están organizadas y siguen las recomendaciones de Laravel, brindándote una base sólida, bien estructurada y acorde a las buenas prácticas.
Stacks avanzados
Con la versión para Livewire o Inertia, puedes aprovechar la reactividad y las ventajas de un frontend más dinámico sin tener que crear toda la infraestructura desde cero. Si prefieres Vue o React, la integración ya viene preparada y lista para usar.
Scaffolding API
Si estás construyendo un backend en Laravel para que un cliente SPA (Next.js, Nuxt, etc.) consuma la autenticación, Breeze te genera los endpoints de registro, inicio de sesión y cierre de sesión de manera rápida y segura.
Como hemos mencionado, todas las vistas, estilos y controladores que Breeze añade a tu proyecto se encuentran en:
resources/views/auth
(o en resources/views
si usas Blade, con algunas carpetas adicionales según el stack)
app/Http/Controllers/Auth
Rutas agrupadas (generalmente en routes/web.php
o en un archivo específico para auth, dependiendo del stack)
Esto te permite:
Cambiar el diseño: editar el layout con tus propios estilos o ajustar la configuración de Tailwind en tailwind.config.js
.
Modificar la lógica: añadir campos extra en el formulario de registro, personalizar la lógica de restablecimiento de contraseñas, etc.
Ajustar las rutas: si prefieres usar rutas con diferentes nombres o prefijos (por ejemplo, /login
-> /acceso
).
Al ser código que vive directamente en tu proyecto, no dependes de un paquete remoto para mantener tus personalizaciones.
Si te gusta el desarrollo con Livewire, tienes la opción de instalar Breeze con este stack para crear componentes Livewire que gestionan la autenticación. Esto te permitirá desarrollar vistas reactivas sin recargar la página y conservar la esencia de Blade.
Si lo tuyo es un frontend más dinámico, Laravel Breeze ofrece una versión con Inertia.js, un “framework” que te permite utilizar un enrutador y controladores de Laravel, pero renderizando tus vistas con Vue o React. El flujo de datos y la comunicación con el backend siguen siendo simples y directos.
Para aplicaciones donde Laravel sirva únicamente como backend, Breeze puede crear rutas y controladores para autenticar usuarios a través de peticiones HTTP (registro, login, logout, verificación de correo, restablecimiento de contraseña, etc.). Perfecto para apps basadas en SPA (Next, Nuxt, Angular, etc.) que requieran un backend sólido y seguro.
Laravel Breeze es el método recomendado y más sencillo para añadir autenticación básica a tus proyectos con Laravel. Su minimalismo, su uso de Blade y Tailwind y su capacidad de adaptación a stacks más complejos (Livewire, Inertia o API) lo convierten en una excelente elección para iniciar cualquier aplicación sin sacrificar flexibilidad ni escalabilidad.
Si vienes de Laravel UI, notarás que Breeze es mucho más moderno y personalizable. Y si es tu primera vez usando un scaffold de autenticación, disfrutarás de un método rápido y eficiente que te ahorrará muchas horas de configuración.
No te pierdas nuestra ruta de Laravel 11, donde exploramos las funciones más recientes del framework, prácticas avanzadas y consejos para optimizar tus proyectos. ¡Te esperamos allí para que lleves tus aplicaciones al siguiente nivel!
Cursosdesarrolloweb es una plataforma educativa con cursos y tutoriales en texto y vídeo.
Términos y condiciones Política de privacidad Términos y condiciones para afiliados Formulario de contacto
Copyright 2025 © Todos los derechos reservados.