AdminLTE es una de las plantillas de administración más populares del mundo, con más de 44.000 estrellas en GitHub. Basada en Bootstrap, ofrece un diseño limpio y profesional para paneles de control, dashboards y backoffices. En este tutorial aprenderás a integrar AdminLTE en Laravel usando el paquete jeroennoten/Laravel-AdminLTE, que simplifica toda la configuración.
Actualizado para Laravel 11/12 - Este tutorial funciona con las versiones más recientes de Laravel.
jeroennoten/Laravel-AdminLTE es un paquete de Laravel que facilita la integración de la plantilla de diseño AdminLTE en un proyecto de Laravel. Este paquete proporciona una forma sencilla de añadir la plantilla AdminLTE a tu proyecto de Laravel sin tener que realizar la configuración manualmente.
Para utilizar jeroennoten/Laravel-AdminLTE, primero debes instalar Laravel en tu entorno de desarrollo y luego instalar el paquete a través de Composer. A continuación, puedes utilizar el paquete para integrar fácilmente la plantilla AdminLTE en tus vistas de Laravel.
Este paquete también incluye varias herramientas útiles para personalizar la plantilla AdminLTE y adaptarla a tus necesidades específicas. Por ejemplo, puedes utilizar el paquete para configurar el menú de navegación, cambiar el diseño y la apariencia de la plantilla y agregar widgets y elementos adicionales a tu panel de administración.
¿AdminLTE o Filament? Cuál elegir
Antes de continuar, es importante que conozcas las alternativas:
Característica | AdminLTE | Filament 4 |
|---|---|---|
Tipo | Plantilla HTML/CSS | Framework PHP completo |
Curva de aprendizaje | Baja | Media |
CRUD automático | No | Sí |
Personalización visual | Alta (manual) | Alta (con componentes) |
Ideal para | Proyectos simples, diseño personalizado | Paneles complejos, desarrollo rápido |
Mi recomendación: Si necesitas un panel de administración rápido y potente, considera Filament 4 - es el estándar actual en el ecosistema Laravel. Si prefieres control total del HTML/CSS o tienes un diseño específico, AdminLTE sigue siendo una excelente opción.
Instalar AdminLTE en Laravel
Nota Laravel 11/12: Los comandos de este tutorial funcionan igual en Laravel 11 y 12. La única diferencia es que en Laravel 11+ los middlewares se registran en
bootstrap/app.phpen lugar deapp/Http/Kernel.php. Si usas la estructura clásica (como este proyecto), sigue las instrucciones tal cual.
Para instalar jeroennoten/Laravel-AdminLTE en tu proyecto Laravel debes seguir estos pasos:
Abre tu terminal y dirígete al directorio raíz de tu proyecto de Laravel.
Ejecuta el siguiente comando para instalar el paquete a través de Composer:
Una vez instalado el paquete, debes publicar los archivos de configuración del paquete utilizando el siguiente comando:
Personalizar las vistas de autenticación en AdminLTE en Laravel
Opcionalmente, y solo para Laravel 7+, el paquete ofrece un conjunto de vistas de autenticación con el look&feel de AdminLTE que se puede utilizar en reemplazo de las proporcionadas por el sistema de autenticación de laravel/ui. Si planeas usar estas vistas deberás ejecutar los siguientes comandos en tu proyecto:
Manejo de roles con Enums en Laravel
Para gestionar los roles de forma sencilla y poder dar acceso sólo a los administradores al panel de AdminLTE, vamos a crear un enum válido para el sistema de migraciones en Laravel.
Ahora vamos a actualizar la migración de usuarios para utilizar nuestro enum UserType:
Hagamos también un ajuste en nuestro modelo User para hacer buen uso de nuestra configuración:
Middleware para controlar el acceso de Administradores
Es importante proteger el acceso a la sección de administración de nuestras aplicaciones. En Laravel esta tarea la podemos gestionar fácilmente con Middlewares, creemos uno con el siguiente código:
El Middleware IsAdmin lo utilizaremos para proteger las rutas de administración más adelante, pero para ello, necesitamos registrarlo en el Kernel Http de la siguiente forma:
Crear usuario administrador
Vamos a crear un usuario administrador para gestionar nuestro sistema a través de los seeders de Laravel:
Con esto ya lo tenemos todo listo y estamos en condiciones de iniciar controladores y rutas para nuestros administradores.
Controlador para el panel de AdminLTE
Creemos un controlador AdminController rápidamente, el cual se encargará de mostrar el panel AdminLTE a los administradores del sistema:
Utilizando el layout de AdminLTE en Laravel
El layout de administración de AdminLTE ya está diseñado, sólo debemos utilizarlo de la siguiente forma, en este caso en nuestro archivo de vista admin/index.blade.php:
Definir el sistema de rutas
Nuestro sistema de rutas web será sencillo, pero lo necesario para que tú más adelante puedas extenderlo a tus necesidades:
Como puedes ver, por un lado tenemos la ruta para la sección de administración, la cual está protegida por el middleware admin que hemos desarrollado anteriormente, y por otro lado la ruta home que se supone está pensada para mostrar la interfaz para usuarios identificados que no sean administradores.
Ajustar el inicio de sesión para los administradores
Si ahora te diriges a la ruta /login y accedes con las credenciales de administrador que hemos creado anteriormente verás que Laravel te deja en la ruta /home, y es normal, necesitamos ajustar algunas cosas para que esto funcione como necesitamos.
Lo primero que necesitamos es actualizar el LoginController con lo siguiente:
El método redirectTo en combinación con nuestro Accessor isAdmin hacen el trabajo que necesitamos, que es mandar al usuario identificado a la zona que corresponda dependiendo de si es administrador o no.
Lo segundo que necesitamos es ajustar el RouteServiceProvider para añadir la siguiente constante, la cual nos servirá a continuación:
Lo tercero y último que necesitamos es actualizar el middleware RedirectIfAuthenticated de la siguiente forma:
A partir de ahora, si vuelves a acceder con el usuario administrador, verás que Laravel te deja en la ruta /admin, desde donde podrás ver el panel de administración de AdminLTE.
Espero que esta entrada te haya resultado útil y a partir de ahora puedas implementar AdminLTE en Laravel de forma rápida y sencilla. Si deseas profundizar más en el uso de esta dependencia, sólo debes revisar su documentación, es sencilla, completa y cubrirá todo lo que puedas necesitar.
Si necesitas un panel administrativo avanzado en Laravel, suscríbete y realiza la ruta Filament 3 y Filament 4, es una pasada, desde 0, podrás construir sistemas administrativos rápidos y completos.
Preguntas frecuentes sobre AdminLTE en Laravel
¿AdminLTE es gratis?
Sí, AdminLTE es 100% gratuito y open source bajo licencia MIT. Puedes usarlo en proyectos personales y comerciales sin coste.
¿Funciona AdminLTE con Laravel 12?
Sí, el paquete jeroennoten/Laravel-AdminLTE es compatible con Laravel 9, 10, 11 y 12. Solo asegúrate de usar la última versión del paquete.
¿Cuál es la diferencia entre AdminLTE y Filament?
AdminLTE es una plantilla HTML/CSS que requiere que construyas la lógica manualmente. Filament es un framework completo que genera CRUDs, formularios y tablas automáticamente. Para proyectos nuevos, Filament suele ser más productivo.
¿Puedo usar AdminLTE con Livewire?
Sí, puedes integrar componentes Livewire dentro de las vistas de AdminLTE sin problemas. Solo necesitas incluir los scripts de Livewire en el layout.
¿Cómo personalizo el menú de navegación en AdminLTE?
El menú se configura en el archivo config/adminlte.php en la sección menu. Puedes añadir enlaces, submenús, separadores y badges de forma declarativa.
Curso Laravel 12
Completo 2026
El único curso 100% actualizado que incluye Laravel 12, Livewire 3, Vue 3, React 19 e Inertia 2. Aprende con proyectos reales y las últimas funcionalidades.
star Incluido en cualquier suscripción