Laravel-Users | A Laravel Users CRUD Management Package
- About
- Features
- Requirements
- Installation Instructions
- Configuration
- Routes
- Screenshots
- File Tree
- Opening an Issue
- License
A Users Management CRUD Package that includes all necessary routes, views, models, and controllers for a user management dashboard and associated pages for managing Laravels built in user scaffolding. Easily start creating, updating, editing, and deleting users in minutes with minimal setup required; Easily search all users, helpful for large user bases. Built for Laravel 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, and 6.0. This package is easily configurable and customizable.
Laravel users can work out the box with or without the following roles packages:
Laravel Users Features |
---|
Full CRUD of Laravel Users |
Works with built in auth scaffolding |
Works with various Roles/ACL Packages |
Uses Language localization File System |
Uses font awesome, cdn can be optionally called in config |
Can use built in pagination and/or datatables.js |
Can search all users by name, id, or email |
Lots of configuration options |
-
From your projects root folder in terminal run:
Laravel 5.6, 5.7, and 5.8+ use:
composer require jeremykenedy/laravel-users
Laravel 5.5 use:
composer require jeremykenedy/laravel-users:2.0.2
Laravel 5.4 use:
composer require jeremykenedy/laravel-users:1.4.0
Laravel 5.3 use:
composer require jeremykenedy/laravel-users:1.3.0
Laravel 5.2 use:
composer require jeremykenedy/laravel-users:1.2.0
-
Register Package
-
Laravel 5.5, 5.6, and 5.7+ Uses package auto discovery feature, no need to edit the
config/app.php
file. -
Laravel 5.4 and below Register the package with laravel in
config/app.php
underproviders
with the following:Collective\Html\HtmlServiceProvider::class, jeremykenedy\laravelusers\LaravelUsersServiceProvider::class,
- Register the dependencies aliases
-
Laravel 5.5 and up Uses package auto discovery feature, no need to edit the
config/app.php
file. -
Laravel 5.4 and below In
config/app.php
section underaliases
with the following:'Form' => Collective\Html\FormFacade::class, 'Html' => Collective\Html\HtmlFacade::class,
-
Publish the package config and language files by running the following from your projects root folder:
php artisan vendor:publish --tag=laravelusers
Laravel Users can be configured directly in /config/laravelusers.php
once you publish the assets.
/*
|--------------------------------------------------------------------------
| Laravel-users setting
|--------------------------------------------------------------------------
*/
// The parent blade file
'laravelUsersBladeExtended' => 'laravelusers::layouts.app', // 'layouts.app'
// Enable `auth` middleware
'authEnabled' => true,
// Enable Optional Roles Middleware on the users assignments
'rolesEnabled' => false,
/*
| Enable Roles Middlware on the usability of this package.
| This requires the middleware from the roles package to be registered in `App\Http\Kernel.php`
| An Example: of roles middleware entry in protected `$routeMiddleware` array would be:
| 'role' => \jeremykenedy\LaravelRoles\Middleware\VerifyRole::class,
*/
'rolesMiddlwareEnabled' => true,
// Optional Roles Middleware
'rolesMiddlware' => 'role:admin',
// Optional Role Model
'roleModel' => 'jeremykenedy\LaravelRoles\Models\Role',
// Enable Soft Deletes - Not yet setup - on the roadmap.
'softDeletedEnabled' => false,
// Laravel Default User Model
'defaultUserModel' => 'App\User',
// Use the provided blade templates or extend to your own templates.
'showUsersBlade' => 'laravelusers::usersmanagement.show-users',
'createUserBlade' => 'laravelusers::usersmanagement.create-user',
'showIndividualUserBlade' => 'laravelusers::usersmanagement.show-user',
'editIndividualUserBlade' => 'laravelusers::usersmanagement.edit-user',
// Use Package Bootstrap Flash Alerts
'enablePackageBootstapAlerts' => true,
// Users List Pagination
'enablePagination' => true,
'paginateListSize' => 25,
// Enable Search Users- Uses jQuery Ajax
'enableSearchUsers' => true,
// Users List JS DataTables - not recommended use with pagination
'enabledDatatablesJs' => false,
'datatablesJsStartCount' => 25,
'datatablesCssCDN' => 'https://cdn.datatables.net/1.10.12/css/dataTables.bootstrap.min.css',
'datatablesJsCDN' => 'https://cdn.datatables.net/1.10.12/js/jquery.dataTables.min.js',
'datatablesJsPresetCDN' => 'https://cdn.datatables.net/1.10.12/js/dataTables.bootstrap.min.js',
// Bootstrap Tooltips
'tooltipsEnabled' => true,
'enableBootstrapPopperJsCdn' => true,
'bootstrapPopperJsCdn' => 'https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js',
// Icons
'fontAwesomeEnabled' => true,
'fontAwesomeCdn' => 'https://use.fontawesome.com/releases/v5.0.6/css/all.css',
// Extended blade options for packages app.blade.php
'enableBootstrapCssCdn' => true,
'bootstrapCssCdn' => 'https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css',
'enableAppCss' => true,
'appCssPublicFile' => 'css/app.css',
'enableBootstrapJsCdn' => true,
'bootstrapJsCdn' => 'https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js',
'enableAppJs' => true,
'appJsPublicFile' => 'js/app.js',
'enablejQueryCdn' => true,
'jQueryCdn' => 'https://code.jquery.com/jquery-3.3.1.min.js',
/users
/users/{id}
/users/create
/users/{id}/edit
Method | URI | Name | Action | Middleware |
---|---|---|---|---|
GET/HEAD | users | users | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@index | web,auth |
POST | users | users.store | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@store | web,auth |
GET/HEAD | users/create | users.create | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@create | web,auth |
GET/HEAD | users/{user} | users.show | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@show | web,auth |
DELETE | users/{user} | user.destroy | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@destroy | web,auth |
PUT/PATCH | users/{user} | users.update | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@update | web,auth |
GET/HEAD | users/{user}/edit | users.edit | jeremykenedy\laravelusers\app\Http\Controllers\UsersManagementController@edit | web,auth |
(included in this package)
laravel-users/
├── .env.travis
├── .gitignore
├── .travis.yml
├── LICENSE
├── composer.json
├── phpunit.xml
├── readme.md
└── src
├── App
│ └── Http
│ └── Controllers
│ └── UsersManagementController.php
├── LaravelUsersFacade.php
├── LaravelUsersServiceProvider.php
├── config
│ └── laravelusers.php
├── resources
│ ├── lang
│ │ └── en
│ │ ├── app.php
│ │ ├── forms.php
│ │ ├── laravelusers.php
│ │ └── modals.php
│ └── views
│ ├── layouts
│ │ └── app.blade.php
│ ├── modals
│ │ ├── modal-delete.blade.php
│ │ └── modal-save.blade.php
│ ├── partials
│ │ ├── bs-visibility-css.blade.php
│ │ ├── form-status.blade.php
│ │ ├── search-users-form.blade.php
│ │ └── styles.blade.php
│ ├── scripts
│ │ ├── check-changed.blade.php
│ │ ├── datatables.blade.php
│ │ ├── delete-modal-script.blade.php
│ │ ├── save-modal-script.blade.php
│ │ ├── search-users.blade.php
│ │ ├── toggleText.blade.php
│ │ └── tooltips.blade.php
│ └── usersmanagement
│ ├── create-user.blade.php
│ ├── edit-user.blade.php
│ ├── show-user.blade.php
│ └── show-users.blade.php
└── routes
└── web.php
- Tree command can be installed using brew:
brew install tree
- File tree generated using command
tree -a -I '.git|node_modules|vendor|storage|tests'
Before opening an issue there are a couple of considerations:
- A star on this project shows support and is way to say thank you to all the contributors. If you open an issue without a star, your issue may be closed without consideration. Thank you for understanding and the support. You are all awesome!
- Read the instructions and make sure all steps were followed correctly.
- Check that the issue is not specific to your development environment setup.
- Provide duplication steps.
- Attempt to look into the issue, and if you have a solution, make a pull request.
- Show that you have made an attempt to look into the issue.
- Check to see if the issue you are reporting is a duplicate of a previous reported issue.
- Following these instructions show me that you have tried.
- If you have a questions send me an email to jeremykenedy@gmail.com
- Need some help, I can do my best on Slack: https://opensourcehelpgroup.slack.com
- Please be considerate that this is an open source project that I provide to the community for FREE when opening an issue.
Laravel-Users | A Laravel Users Management Package is open-sourced software licensed under the MIT license. Enjoy!