AdminLTE Laravel (adminlte-laravel) is an open-source Laravel boilerplate package that replaces the default Laravel authentication scaffolding with the AdminLTE admin dashboard theme, Bootstrap 3.0, and the Pratt landing page. Created by Sergi Tur Badenas (acacha) and maintained on GitHub, it is distributed through Packagist as acacha/admin-lte-template-laravel and installs via Composer.
What is AdminLTE Laravel?
AdminLTE Laravel is a boilerplate-swapping package for Laravel 5/6/7 projects. It takes a fresh Laravel installation as input and produces a working admin panel with login/register pages, a sidebar menu, user profile Gravatar images, and a landing page, all styled with the free AdminLTE theme built on Bootstrap 3.x. The package also adds custom Artisan commands for generating views, routes, menus, and an admin seeder.
Key Features
- Artisan make:view — creates a blank view in resources/views using the AdminLTE default layout (e.g. php artisan make:view about)
- Artisan make:route — generates routes in routes/web.php or routes/api.php with options for regular, controller, resource, and custom HTTP methods, plus optional view/controller creation via the -a flag
- Artisan make:menu — adds menu entries to config/menu.php for the default sidebar
- adminlte:publish and adminlte:sidebar — publish package assets and the customizable sidebar view into the Laravel project
- adminlte:menu — replaces the sidebar with a spatie/laravel-menu driven menu (requires PHP 7.0+)
- adminlte:admin and make:adminUserSeeder — creates an AdminUserSeeder and seeds a default admin user using ADMIN_USER, ADMIN_EMAIL, ADMIN_PWD env variables, falling back to git config or Admin/123456
- Username login — adminlte:username switches authentication from email to username, with optional default domain in config/auth.php
- Vue localization bridge — publishes Laravel translation strings into a window.trans JavaScript variable, exposing a trans() helper usable in Vue templates and components
- Social login (optional) — integration with acacha/laravel-social to add OAuth providers via a setup wizard
Who is it for?
- Laravel developers building admin panels — get a pre-built AdminLTE dashboard with auth scaffolding instead of the default Bootstrap 3 layout
- Developers who need rapid CRUD mockups — use make:route with --type=resource and -a to generate controllers, views, and routes in one step
- Teams standardizing on a branded backend — customize the sidebar, menu, and localization (English, Catalan, Spanish, Dutch, Brazilian Portuguese) without touching the package source
What can you do with AdminLTE Laravel?
- Create pages fast: run php artisan make:route about -a to add a route, a view, and optionally a controller in a single command
- Seed a working admin user: run php artisan adminlte:admin to insert a login-ready user from env variables or defaults, then log in via the AdminLTE interface
- Switch to username logins: run php artisan adminlte:username and configure the users provider field so users authenticate with usernames instead of emails
- Make the sidebar dynamic: run adminlte:menu to replace the static sidebar with a spatie/laravel-menu navigation defined in config/menu.php
How does AdminLTE Laravel work?
Install the package with composer require acacha/admin-lte-template-laravel, then publish its assets with php artisan vendor:publish --tag=adminlte --force. After configuration, create a database, set credentials in .env, run php artisan migrate, and register a user to access the admin area. Package routes are loaded from src/Http/routes.php and can be overridden by placing the app's RouteServiceProvider after the package's provider in config/app.php or by adding Route::auth() and a /home route manually.
FAQ
Is AdminLTE Laravel free?
Yes, the package is released under the MIT License and its source is hosted on GitHub. The AdminLTE theme itself is also free.
What Laravel versions are supported?
The 7.x package line targets Laravel 7; the 6.x line supports Laravel 6 and 5.x. Older Laravel 4 users should use the 0.1.5 tag.
Can I use username instead of email for login?
Run php artisan adminlte:username, add a username column via a migration (requires doctrine/dbal), and set 'field' => 'username' in config/auth.php. The system falls back to email login if the username lookup fails.
How do I remove social login?
Delete the line @include('auth.partials.social_login') from resources/views/auth/login.blade.php and register.blade.php.
Which languages are supported?
Localization strings ship in English, Catalan, Spanish, Dutch, and Brazilian Portuguese. You can publish only language files with the adminlte_lang tag and change the locale in config/app.php.







