PHPackages                             eslamfaroug/laravel-permission-plus - 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. eslamfaroug/laravel-permission-plus

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

eslamfaroug/laravel-permission-plus
===================================

An advanced permission management system for Laravel with role-based access control and group management.

10PHP

Since Aug 10Pushed 9mo agoCompare

[ Source](https://github.com/EslamFaroug/laravel-permission-plus)[ Packagist](https://packagist.org/packages/eslamfaroug/laravel-permission-plus)[ RSS](/packages/eslamfaroug-laravel-permission-plus/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Laravel Permission Plus
=======================

[](#laravel-permission-plus)

 [![Laravel Permission Plus Logo](logo.png)](logo.png)

**Author:** [Eslam Faroug](mailto:eslamfaroug3@gmail.com)

---

📚 Table of Contents
-------------------

[](#-table-of-contents)

- [🚀 Introduction](#-introduction)
- [✨ Key Features](#-key-features)
- [📖 Documentation](#-documentation)
- [⚙️ Installation](#%EF%B8%8F-installation)
- [🔧 Core Components](#-core-components)
- [🎯 Quick Start Guide](#-quick-start-guide)
- [📋 Basic Usage Examples](#-basic-usage-examples)
- [🔄 CRUD Operations](#-crud-operations)
- [🌐 Advanced Features](#-advanced-features)
- [🔗 Customization &amp; Integration](#-customization--integration)
- [📝 Contributing](#-contributing)
- [📄 License](#-license)

---

🚀 Introduction
--------------

[](#-introduction)

**Laravel Permission Plus** is an advanced, flexible, and multilingual package for managing permissions, roles, and groups in Laravel applications. It provides a comprehensive RBAC (Role-Based Access Control) system with support for:

- **Multilingual content** (JSON columns for Arabic, English, French, etc.)
- **Polymorphic relationships** (assign to any Eloquent model)
- **Group-based access control** (organize users into teams)
- **High performance** (optimized queries and relationships)
- **Multi-guard support** (web, API, admin, etc.)

Perfect for applications requiring sophisticated access control with internationalization support.

---

✨ Key Features
--------------

[](#-key-features)

FeatureDescription🔐 **Advanced RBAC**Complete permission, role, and group management🌍 **Multilingual**JSON columns for name/description in multiple languages🔗 **Polymorphic**Assign permissions to any model (User, Employee, Client)⚡ **High Performance**Optimized queries and efficient relationships🎯 **Simple API**Easy-to-use Traits, Facades, and Helper functions🛡️ **Multi-guard**Support for different authentication contexts🔧 **Extensible**Fully customizable tables, models, and relationships📱 **Modern**Built for Laravel 8+ with modern PHP practices---

📖 Documentation
---------------

[](#-documentation)

This package includes comprehensive documentation organized by complexity level:

DocumentPurposeBest For**[📋 Usage Examples](USAGE_EXAMPLES.md)**Basic operations and common patterns**Beginners** - Getting started**[📚 Comprehensive Examples](COMPREHENSIVE_EXAMPLES.md)**Advanced features and complex scenarios**Advanced users** - Mastering the package**[📖 README.md](README.md)**Overview and CRUD operations**Reference** - Quick lookups---

⚙️ Installation
---------------

[](#️-installation)

### 1. Install Package

[](#1-install-package)

```
composer require eslamfaroug/laravel-permission-plus
```

### 2. Publish Configuration

[](#2-publish-configuration)

```
php artisan vendor:publish --provider="EslamFaroug\PermissionPlus\Providers\PermissionServiceProvider" --tag="permission-plus-config"
php artisan vendor:publish --provider="EslamFaroug\PermissionPlus\Providers\PermissionServiceProvider" --tag="permission-plus-migrations"
```

### 3. Run Migrations

[](#3-run-migrations)

```
php artisan migrate
```

### 4. Verify Installation

[](#4-verify-installation)

```
composer test
# or
./vendor/bin/phpunit
```

---

🔧 Core Components
-----------------

[](#-core-components)

### Models

[](#models)

- **`Permission`** - Individual access rights
- **`Role`** - Collections of permissions
- **`Group`** - Collections of roles and users
- **`PermissionGuard`** - Permission containers by context

### Traits

[](#traits)

- **`HasAccessControl`** - Assign/check roles, permissions, groups
- **`HasTranslatable`** - Automatic multilingual field handling

### Services

[](#services)

- **`AccessControlManager`** - Central service for all operations

### API Access

[](#api-access)

- **Helper Function**: `AccessControl()->roles()->list()`
- **Facade**: `AccessControl::roles()->list()`

---

🎯 Quick Start Guide
-------------------

[](#-quick-start-guide)

### Step 1: Add Trait to User Model

[](#step-1-add-trait-to-user-model)

```
