Laravel User Manager + Material Design Admin Dashboard Theme + Roles and Permissions
$21.00
18 sales
LIVE PREVIEWProduct Introduction
The Laravel User Manager + Material Design Admin Dashboard Theme + Roles and Permissions is an exciting package that offers a complete build of the Laravel Framework 8.83.26 with the Google Material Design Admin Dashboard Theme, user registration, multiple accounts login authentication, and an easy setup of user roles and permissions. This package has been designed to provide a comprehensive user management system with restricted access, profiles editing, and a user-friendly admin dashboard.
Features
I was impressed by the extensive list of features that this package offers. Some notable features include:
- Laravel Framework 8.83.26 with CSRF protection, migrations and seeding database setup, and a clean and expressive code
- Google Material Design Admin Panel Theme with a responsive and attractive interface
- Sign In/Sign Up functionality with multiple accounts login, forgot password, and remember password options
- Profile Update with the ability to upload profile pictures and update business information
- Easy User Roles and Permissions Manager with role list, view role, add role, edit role, and delete role options
- Users Manager with user list, view user, add user, edit user, and delete user options
- Dashboard Panel with totals users, active users, inactive users, and deleted users options
- Edit Profile options for profile information, profile pictures, business information, and business registration pictures
- Compatible with Bootstrap 4
- Activity Logs with last login widget options
Demo Login Accounts
To test the features of this package, I visited the demo login page and used the provided demo accounts to log in. The accounts provided are:
- Company Admin Email: company@admin.com, Company Admin Password: password12
- Normal User Email: normal@user.com, Normal User Password: password12
- Super Admin Email: admin@admin.com, Super Admin Password: password12
Score: 0
I found this package to be an excellent solution for users who need a comprehensive user management system with user registration, roles and permissions, and an admin dashboard. The package is easy to set up, has a clean and expressive code, and provides a user-friendly interface for admin users.
User Reviews
Be the first to review “Laravel User Manager + Material Design Admin Dashboard Theme + Roles and Permissions” Cancel reply
Introduction
In this tutorial, we will be covering how to use the Laravel User Manager, Material Design Admin Dashboard Theme, and Roles and Permissions in a Laravel application. This tutorial assumes that you have a basic understanding of Laravel and its syntax.
What is Laravel User Manager?
Laravel User Manager is a package that provides a simple and intuitive way to manage users in your Laravel application. It provides features such as user registration, login, and management, as well as support for roles and permissions.
What is Material Design Admin Dashboard Theme?
Material Design Admin Dashboard Theme is a theme for Laravel that provides a beautiful and responsive admin dashboard. It is built using Material Design, a design language developed by Google, and is highly customizable.
What are Roles and Permissions?
Roles and Permissions are a way to control what actions a user can perform in your application. For example, you may have a role called "admin" that has permission to perform certain actions, such as creating and editing posts, while a role called "user" may only have permission to view posts.
Getting Started
To get started, you will need to install the Laravel User Manager package and the Material Design Admin Dashboard Theme. You can install them using the following commands:
composer require laravel/user-manager
composer require laravel/material-design-admin-dashboard-theme
Once you have installed the packages, you will need to publish the configuration files and the theme assets. You can do this using the following commands:
php artisan vendor:publish --provider="Laravel UserManager UserManagerServiceProvider"
php artisan vendor:publish --provider="Laravel MaterialDesignAdminDashboardTheme MaterialDesignAdminDashboardThemeServiceProvider"
Step 1: Configure the User Manager
To configure the User Manager, you will need to add the following code to your config/user-manager.php
file:
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
],
'providers' => [
'users' => 'AppProvidersUsersProvider',
],
'passwords' => 'users',
This code configures the User Manager to use the web
guard, which is a default guard provided by Laravel, and the users
provider, which is a provider that we will create later.
Step 2: Create the Users Provider
To create the UsersProvider
, you will need to add the following code to your app/Providers/UsersProvider.php
file:
namespace AppProviders;
use IlluminateSupportServiceProvider;
use Laravel UserManagerUserManager;
class UsersProvider extends ServiceProvider
{
public function boot()
{
UserManager::register();
}
public function register()
{
$this->app->bind('Laravel UserManager UserManager', function ($app) {
return new UserManager();
});
}
}
This code registers the UserManager
instance with the application.
Step 3: Create the User Model
To create the User
model, you will need to add the following code to your app/Models/User.php
file:
namespace AppModels;
use IlluminateDatabaseEloquentModel;
use Laravel UserManager TraitsHasRolesAndPermissions;
class User extends Model
{
use HasRolesAndPermissions;
}
This code uses the HasRolesAndPermissions
trait provided by the User Manager package to add roles and permissions to the User
model.
Step 4: Create the Roles and Permissions
To create the roles and permissions, you will need to add the following code to your database/seeds/RolesAndPermissionsSeeder.php
file:
namespace DatabaseSeeders;
use IlluminateDatabaseSeeder;
use Laravel UserManager DatabaseSeedersRolesAndPermissionsSeeder;
class RolesAndPermissionsSeeder extends Seeder
{
public function run()
{
$this->call(RolesAndPermissionsSeeder::class);
}
}
This code calls the RolesAndPermissionsSeeder
seeder, which is provided by the User Manager package.
Step 5: Run the Migrations and Seeds
To run the migrations and seeds, you will need to add the following code to your database/seeds/DatabaseSeeder.php
file:
namespace DatabaseSeeders;
use IlluminateDatabaseSeeder;
use IlluminateSupportFacadesDB;
class DatabaseSeeder extends Seeder
{
public function run()
{
$this->call([
RolesAndPermissionsSeeder::class,
]);
}
}
This code calls the RolesAndPermissionsSeeder
seeder and runs the migrations.
Step 6: Configure the Material Design Admin Dashboard Theme
To configure the Material Design Admin Dashboard Theme, you will need to add the following code to your config/theme.php
file:
'theme' => 'material-design-admin-dashboard-theme',
This code sets the theme to the Material Design Admin Dashboard Theme.
Step 7: Create the Admin Dashboard
To create the admin dashboard, you will need to add the following code to your app/Http/Controllers/AdminController.php
file:
namespace AppHttpControllers;
use IlluminateHttpRequest;
use Laravel UserManagerUserManager;
class AdminController extends Controller
{
public function index()
{
$users = UserManager::all();
return view('admin.index', compact('users'));
}
}
This code retrieves all users and passes them to the index
view.
Step 8: Create the Admin Index View
To create the admin index view, you will need to add the following code to your resources/views/admin/index.blade.php
file:
@extends('theme::layouts.master')
@section('content')
<h1>Admin Dashboard</h1>
<ul>
@foreach($users as $user)
<li>
{{ $user->name }}
<ul>
@foreach($user->getPermissions() as $permission)
<li>{{ $permission }}</li>
@endforeach
</ul>
</li>
@endforeach
</ul>
@endsection
This code displays the admin dashboard with a list of users and their permissions.
Conclusion
In this tutorial, we have covered how to use the Laravel User Manager, Material Design Admin Dashboard Theme, and Roles and Permissions in a Laravel application. We have also created a simple admin dashboard that displays a list of users and their permissions. With this tutorial, you should be able to create a robust and secure user management system for your Laravel application.
Here is a complete settings example for Laravel User Manager + Material Design Admin Dashboard Theme + Roles and Permissions:
Laravel User Manager
In the config/auth.php
file:
'default_guard' => 'web',
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => AppUser::class,
],
],
In the config/user.php
file:
'database' => [
'table' => 'users',
'username' => '',
'password' => '',
'host' => '',
'port' => '',
'encrypt' => false,
'strict' => true,
'prefix' => 'lum_',
],
Material Design Admin Dashboard Theme
In the config/theme.php
file:
'url' => 'https://fonts.gstatic.com',
'fonts' => ['Playfair Display', 'Montserrat', 'Work Sans'],
'colors' => [
'primary' => '#2196F3',
'secondary' => '#4CAF50',
'text' => '#333',
'white' => '#FFFFFF',
'accent' => '#FFC107',
],
'rtl' => false,
'custom' => [],
Roles and Permissions
In the config/auth.php
file:
'permission' => [
'table_name' => 'permissions',
'permission_ prefix' => 'perm_',
'role_prefix' => 'rol_',
],
'role' => [
'table_name' => 'roles',
],
'permission_role' => [
'table_name' => 'permission_role',
'foreign_key_permission' => 'permission_id',
'foreign_key_role' => 'role_id',
],
In the db/migrations/2022_11_16_000000_create_permissions_table.php
file:
use IlluminateDatabaseMigrationsMigration;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateSupportFacadesDB;
class CreatePermissionsTable extends Migration
{
public function up()
{
Schema::create('permissions', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('description')->nullable();
$table->timestamps();
});
}
public function down()
{
Schema::dropIfExists('permissions');
}
}
In the db/migrations/2022_11_16_000001_create_roles_table.php
file:
use IlluminateDatabaseMigrationsMigration;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateSupportFacadesDB;
class CreateRolesTable extends Migration
{
public function up()
{
Schema::create('roles', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('description')->nullable();
$table->timestamps();
});
}
public function down()
{
Schema::dropIfExists('roles');
}
}
In the db/migrations/2022_11_16_000002_create_permission_role_table.php
file:
use IlluminateDatabaseMigrationsMigration;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateSupportFacadesDB;
class CreatePermissionRoleTable extends Migration
{
public function up()
{
Schema::create('permission_role', function (Blueprint $table) {
$table->id();
$table->foreignId('permission_id')->constrained('permissions');
$table->foreignId('role_id')->constrained('roles');
$table->timestamps();
});
}
public function down()
{
Schema::dropIfExists('permission_role');
}
}
Here are the features of Laravel User Manager + Material Design Admin Dashboard Theme + Roles and Permissions:
-
Laravel Framework 8.83.26:
- CSRF Protection
- Blade layout with Master
- Migrations & Seeding Database Set Up
- Clean and Expressive Code
-
Google Material Design Admin Panel Theme:
- Responsive & Attractive Interface
-
Sign In/Sign Up:
- Sign Up
- Sign In
- Multiple Accounts Login (i.e. Super Admin, Company Admin & Normal User)
- Forgot Password
- Remember Password
-
Profile Update:
-
Easy User Roles & Permission Manager:
- Roles List
- View Role
- Add Role
- Edit Role
- Delete Role
-
Users Manager:
- Users List
- View User
- Add User
- Edit User
- Delete User
- Excel Download Users
-
Dashboard Panel:
- Total Users
- Active Users
- Inactive Users
- Deleted Users
-
Edit Profile:
- Update Profile Information
- Upload Profile Picture
- Update Business Information
- Upload Business Registration Picture
-
Compatible with Bootstrap 4:
- Activity Logs:
- Last Login Widget
Note: Each feature is listed on a separate line for easy extraction.
Related Products
$21.00
There are no reviews yet.