appzcoder / laravel-admin
Laravel Admin Panel
Installs: 103 399
Dependents: 0
Suggesters: 0
Security: 0
Stars: 733
Watchers: 55
Forks: 267
Open Issues: 9
Requires
- php: ^7.1|^8.0
- appzcoder/crud-generator: ^3.0
- illuminate/support: ^5.5|^6.0|^7.0|^8.0|^9.0
- laravelcollective/html: ^5.5|^6.0|^7.0
- spatie/laravel-activitylog: ^3.2|^4.0
README
An admin panel for managing users, roles, permissions & crud.
Requirements
Laravel >=5.5
PHP >= 7.0
Features
- User, Role & Permission Manager
- CRUD Generator
- Activity Log
- Page CRUD
- Settings
Installation
-
Run
composer require appzcoder/laravel-admin
-
Install the admin package.
php artisan laravel-admin:install
Service provider will be discovered automatically.
-
Make sure your user model's has a
HasRoles
trait 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.
Usage
-
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
Screenshots
Author
Sohel Amin 📧 Email Me
License
This project is licensed under the MIT License - see the License File for details