PHPackages                             kilroyweb/permissions - 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. kilroyweb/permissions

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

kilroyweb/permissions
=====================

Class-based authorization for Laravel

1.0.7(9y ago)0251MITPHP

Since Jan 18Pushed 8y ago1 watchersCompare

[ Source](https://github.com/kilroyweb/permissions)[ Packagist](https://packagist.org/packages/kilroyweb/permissions)[ RSS](/packages/kilroyweb-permissions/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (7)DependenciesVersions (8)Used By (0)

Permissions
===========

[](#permissions)

Class-based authorization for Laravel

Installation
------------

[](#installation)

Add to providers:

KilroyWeb\\Permissions\\Providers\\PermissionServiceProvider::class,

publish config:

php artisan vendor:publish --tag=config

Generate Permissions
--------------------

[](#generate-permissions)

php artisan make:permission CLASSNAME

ie:

php artisan make:permission ManageUsers

Adding Permissions To A Role
----------------------------

[](#adding-permissions-to-a-role)

Create a new migration:

```
Schema::create('role_permissions', function (Blueprint $table) {
    $table->increments('id');
    $table->integer('user_id');
    $table->string('permission');
    $table->timestamps();
});

```

and model:

```
php artisan make:model RolePermission

```

Adding Permissions To A User
----------------------------

[](#adding-permissions-to-a-user)

Create a new migration:

```
Schema::create('user_permissions', function (Blueprint $table) {
    $table->increments('id');
    $table->integer('user_id');
    $table->string('permission');
    $table->timestamps();
});

```

and model:

```
php artisan make:model UserPermission

```

Add HasPermissions Trait
------------------------

[](#add-haspermissions-trait)

Add the HasPermissions trait to your User/Role model:

```
use \KilroyWeb\Permissions\Traits\HasPermissions;

```

Along with a pointer to the permission model:

```
protected $permissionsClass = \App\UserPermission::class;

```

The trait provides a few useful properties + methods:

$user-&gt;permissionClassNames

uses Laravel's hasmany to return the direct linked permission classes

$user-&gt;permissions

Returns a collection of permission class instances

Methods for adding/deleting permissions:

$user-&gt;addPermission($permissionInstance); $user-&gt;deletePermission($permissionInstance); $user-&gt;syncPermissions($permissionInstances);

###  Health Score

29

—

LowBetter than 57% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity68

Established project with proven stability

 Bus Factor1

Top contributor holds 63.6% 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

Every ~0 days

Total

7

Last Release

3449d ago

### Community

Maintainers

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

---

Top Contributors

[![kilroyweb](https://avatars.githubusercontent.com/u/20406973?v=4)](https://github.com/kilroyweb "kilroyweb (7 commits)")[![kilrizzy](https://avatars.githubusercontent.com/u/132478?v=4)](https://github.com/kilrizzy "kilrizzy (4 commits)")

### Embed Badge

![Health badge](/badges/kilroyweb-permissions/health.svg)

```
[![Health](https://phpackages.com/badges/kilroyweb-permissions/health.svg)](https://phpackages.com/packages/kilroyweb-permissions)
```

###  Alternatives

[kartik-v/yii2-password

Useful password strength validation utilities for Yii Framework 2.0

761.2M17](/packages/kartik-v-yii2-password)

PHPackages © 2026

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