An admin panel for managing users, roles, permissions & crud.
Laravel >=5.5
PHP >= 7.0
- User, Role & Permission Manager
- CRUD Generator
- Activity Log
- Page CRUD
- Settings
- 
Run composer require appzcoder/laravel-admin
- 
Install the admin package. php artisan laravel-admin:installService provider will be discovered automatically. 
- 
Make sure your user model's has a HasRolestrait app/Models/User.php.class User extends Authenticatable { use Notifiable, HasRoles; ... 
- 
You can generate CRUD easily through generator tool now. 
Note: If you are using Laravel 7+ then scaffold the authentication with bootstrap for a better experience.
- 
Create some permissions. 
- 
Create some roles. 
- 
Assign permission(s) to role. 
- 
Create user(s) with role. 
- 
For checking authenticated user's role see below: // Add role middleware in app/Http/Kernel.php protected $routeMiddleware = [ ... 'role' => \App\Http\Middleware\CheckRole::class, ]; // Check role anywhere if (Auth::check() && Auth::user()->hasRole('admin')) { // Do admin stuff here } else { // Do nothing } // Check role in route middleware Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => ['auth', 'role:admin']], function () { Route::get('/', ['uses' => 'AdminController@index']); }); // Check permission in route middleware Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'middleware' => ['auth', 'can:write_user']], function () { Route::get('/', ['uses' => 'AdminController@index']); }); 
- 
For checking permissions see below: if ($user->can('permission-name')) { // Do something } 
Learn more about ACL from here
For activity log please read spatie/laravel-activitylog docs
This project is licensed under the MIT License - see the License File for details



