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(7y 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 yesterday

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 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity47

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

2867d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/45a0281b880d986cae160c8b657c79c2459ff8073ffe42c473959687d1748784?d=identicon)[crebs86](/maintainers/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

[codebot/entrust

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

1596.6k](/packages/codebot-entrust)

PHPackages © 2026

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