PHPackages                             rlgroup/laravel-abilities-controllers - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. rlgroup/laravel-abilities-controllers

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

rlgroup/laravel-abilities-controllers
=====================================

Aabilities for controllers

0.2.1(4y ago)0535MITPHPPHP &gt;=7.0CI failing

Since Jan 16Pushed 4y ago1 watchersCompare

[ Source](https://github.com/rlgroups/abilities)[ Packagist](https://packagist.org/packages/rlgroup/laravel-abilities-controllers)[ RSS](/packages/rlgroup-laravel-abilities-controllers/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (1)Versions (17)Used By (0)

Abilities
---------

[](#abilities)

**A package in Laravel Abilities controller**

### Installation

[](#installation)

Install via [composer](http://getcomposer.org) in the root directory of a Laravel 5 application

```
composer require rlgroup/laravel-abilities-controllers

```

migrate

```
$ php artisan migrate

```

run

```
$ php artisan db:seed --class="Rlgroup\\Abilities\\AbilitiesTableSeeder"

```

Add to Http/Kernel.php in array $routeMiddleware

```
'abilities' => \Rlgroup\Abilities\AbilitiesMiddleware::class,

```

Any place that needs to be read to check permissions can be used routeMiddleware abilities

Add to user.php

```
use Rlgroup\Abilities\UserTrait;  use UserTrait;

```

Add on app.js page

```
---------------------------------
import collect from 'collect.js'

Vue.prototype.actionController = (controller, method = null) => {
  if (app && app.abilitiesUser) {
    if (method) {
      return app.abilitiesUser.indexOf(`${controller}@${method}`) > -1 || app.abilitiesUser.indexOf(`*`) > -1
    } else {
      // console.log(app.abilitiesUser, app.abilitiesUser.indexOf(`${controller}`))
      return app.abilitiesUser.filter(r => {
	return r.indexOf(`${controller}`) > -1
      }).length || app.abilitiesUser.indexOf(`*`) > -1
    }
  }

  return false
}

Vue.prototype.actionControllerLeastOne = (controllers, method = null) => {
  if (app && app.abilitiesUser) {
    let isCan = collect(controllers).map((controller) => {
      return app.abilitiesUser.filter(r => {
	return r.indexOf(`${controller}`) > -1
      }).length > 0 || app.abilitiesUser.indexOf(`*`) > -1
    }).contains(true);

    return isCan;
  }

  return false;
}
-----------------------------
const app = new Vue({
  data() {
    return {
	loading: false,
	 user: {},
	 abilities: []
     }
 },
computed: {
      abilitiesUser() {
	return Object.keys(this.abilities)
      },
      allAbilitiesUser() {
	return this.abilities
      }
    },

    created () {
	this.$vuetify.rtl = true

	axios.get(`/abilities/user`)
	  .then(response => {
	      if (response.data.status == 'ok') {
		this.user = response.data.user
		this.abilities = response.data.abilities
	      }

	      this.loading = true;
	  }).catch(error => {});
      },
});
------------------------------------------------

```

And wherever client side testing (VUE) is needed

```
actionController (action,method)

------------------------------------------------

```

If the project with the GUARD connection must add the GUARD value to the ENV file

```
AUTH_GUARD=

```

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity50

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

Every ~40 days

Recently: every ~4 days

Total

16

Last Release

1708d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/5a3bb6cc1ead069e43d20917649bdbeb0425d29b3961a2d15e415aaae0962a04?d=identicon)[ruchamaAsraf](/maintainers/ruchamaAsraf)

---

Top Contributors

[![ruchamaAsraf](https://avatars.githubusercontent.com/u/53554645?v=4)](https://github.com/ruchamaAsraf "ruchamaAsraf (12 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/rlgroup-laravel-abilities-controllers/health.svg)

```
[![Health](https://phpackages.com/badges/rlgroup-laravel-abilities-controllers/health.svg)](https://phpackages.com/packages/rlgroup-laravel-abilities-controllers)
```

PHPackages © 2026

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