Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel User Is Admin Laravel Package

lvlup-dev/laravel-user-is-admin

View on GitHub
Deep Wiki
Context7

Laravel User Is Admin

Latest Version on Packagist MIT Licensed

Add a boolean is_admin column on your users table and protect routes with a single admin middleware. No roles, no permissions table—just enough for a simple “is this user an administrator?” check.

Quick example

// routes/web.php
Route::middleware(['auth', 'admin'])->group(function () {
    Route::get('/admin/dashboard', AdminDashboardController::class);
});

Unauthenticated users get Laravel’s usual AuthenticationException; authenticated non-admins get 403 (AccessDeniedHttpException).

Installation

You can install the package via composer:

composer require lvlup-dev/laravel-user-is-admin

Run migrations (the package registers its migration automatically):

php artisan migrate

Note : The service provider registers the middleware alias admin for LvlupDev\UserIsAdmin\Http\Middleware\EnsureUserIsAdmin.

Protecting Routes

You can use the admin middleware to protect your routes. Unauthenticated users will trigger Laravel’s usual AuthenticationException, while authenticated non-admins will get a 403 (AccessDeniedHttpException).

// routes/web.php
Route::middleware(['auth', 'admin'])->group(function () {
    Route::get('/admin/dashboard', AdminDashboardController::class);
});

Granting Admin Rights

This package does not ship a custom User model - you keep yours. To grant admin privileges, simply update the is_admin column.

$user->is_admin = true;
$user->save();

Or via a mass update:

User::query()->whereKey($id)->update(['is_admin' => true]);

Alternatives

laravel-user-is-admin is intentionally minimal: one column, one middleware, no UI and no concept of roles or fine-grained permissions.

If you need roles, permissions, teams, Blade directives, Gates, and a full permission layer, use Spatie Laravel Permission instead—it is the standard choice for richer authorization in Laravel apps.

Read this blog post (in French) on why we prefer this pragmatic approach for MVPs.

Credits

laravel-user-is-admin is built and maintained by LVLUP. We help businesses drive operational efficiency through strategic consulting, tailored software development, and advanced AI Agent integrations. Check out our website for more tutorials and resources.

License

The MIT License (MIT). Please see LICENSE for more information.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium