PHPackages                             crebs86/acl-laravel - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. crebs86/acl-laravel

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

crebs86/acl-laravel
===================

A simple and complete Control Panel with ACL for Laravel &gt;= 5.5

0.9(8y ago)024MITHTMLPHP &gt;=7.0.0

Since Jul 7Pushed 7y agoCompare

[ Source](https://github.com/crebs86/acl-lavarel)[ Packagist](https://packagist.org/packages/crebs86/acl-laravel)[ Docs](https://github.com/crebs86/acl-lavarel)[ RSS](/packages/crebs86-acl-laravel/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (1)Dependencies (3)Versions (2)Used By (0)

Fisrt register these services.
------------------------------

[](#fisrt-register-these-services)

On a fresh laravel "&gt;=5.5.\*" installation.

```
composer require crebs86/acl-laravel:0.9

```

Now run codes bellow:
---------------------

[](#now-run-codes-bellow)

Step 1) Publish views and migrations

```
php artisan vendor:publish --tag=first --force

```

Step 2) Migrate databases and seed

```
composer dumpautoload
php artisan migrate
php artisan db:seed

```

Step 3) Publish Classes

```
php artisan vendor:publish --tag=second --force

```

Now register middlewares on app/Http/Kernel.php
-----------------------------------------------

[](#now-register-middlewares-on-apphttpkernelphp)

```
    protected $routeMiddleware = [
    //... laravel codes
        'access' => \Crebs86\Acl\Middleware\Access::class,
        'active' => \Crebs86\Acl\Middleware\Activated::class,
    ];

```

For protect your controllers insert on:
---------------------------------------

[](#for-protect-your-controllers-insert-on)

You may call the middleware method from the controller's constructor.

```
class MyExemploController extends Controller{
        public function __construct()
        {
            $this->middleware('auth');      //if auth is necessary
            $this->middleware('access');    //if email verification is necessary
            $this->middleware('active');    //if active account is necessary
        }
}

```

Protecting methods:
-------------------

[](#protecting-methods)

Method Acl::can(array|string, boolean);

First parameter: array or string, noo default value; set permissions needed.

Second parameter: boolean; default true. If the method protected require a super administrator user.

```
use Crebs86\Acl\Facades\Acl;

class MyExempleController extends Controller{

        public function myMethod()
        {
            Acl::can('permission_name', false);
            //continue...
        }

        public function methodRequireSuperAdminUser()
        {
            Acl::can('permission_name', true);  //for require only super-admin users can access the method define second parameter like true
            //continue...
        }

        public function multiPermission()
        {
              Acl::can(['permission_name', 'other_permission'], false);  //for multi permissions set permissions like a array
              //continue...
        }
}

```

Similarly, you can use the helpers:
-----------------------------------

[](#similarly-you-can-use-the-helpers)

```
class MyExempleController extends Controller{

        public function myMethod()
        {
            have('permission_name', false);
            //continue...
        }

        public function methodRequireSuperAdminUser()
        {
            if(can('permission_name', true)):
                //continue...
            else:
                abort(403,'Access Denied');
            endif
        }

        public function multiPermission()
        {
              have(['permission_name', 'other_permission'], false);
              //continue...
        }
}

```

On Blade files
--------------

[](#on-blade-files)

```
@if(can(['permission_name', 'other_permission'], false))
    You can view this
@else:
    You don't have permission
@endif

```

After installation
------------------

[](#after-installation)

```
http://localhost/login

```

**E-mail: **

**Password: crebsacl**

You should change the email address and pass.

Tanks!

Tanks!

###  Health Score

22

—

LowBetter than 21% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2960d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/25134582?v=4)[crebs86](/maintainers/crebs86)[@crebs86](https://github.com/crebs86)

---

Top Contributors

[![crebs86](https://avatars.githubusercontent.com/u/25134582?v=4)](https://github.com/crebs86 "crebs86 (75 commits)")

---

Tags

laravelauthaclpermissionrolescontrol panel

### Embed Badge

![Health badge](/badges/crebs86-acl-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/crebs86-acl-laravel/health.svg)](https://phpackages.com/packages/crebs86-acl-laravel)
```

###  Alternatives

[propaganistas/laravel-disposable-email

Disposable email validator

6023.2M7](/packages/propaganistas-laravel-disposable-email)[mike-bronner/laravel-model-caching

Automatic caching for Eloquent models.

2.4k161.4k2](/packages/mike-bronner-laravel-model-caching)[iazaran/smart-cache

Smart Cache is a caching optimization package designed to enhance the way your Laravel application handles data caching. It intelligently manages large data sets by compressing, chunking, or applying other optimization strategies to keep your application performant and efficient.

21114.2k](/packages/iazaran-smart-cache)[codebot/entrust

This package provides a flexible way to add Role-based Permissions to Laravel

15103.4k](/packages/codebot-entrust)[wnikk/laravel-access-rules

Simple system of ACR (access control rules) for Laravel, with roles, groups, unlimited inheritance and possibility of multiplayer use.

103.8k1](/packages/wnikk-laravel-access-rules)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
