setiawanhu / sanctum-auth
Laravel package for generating user authentication feature using Laravel Sanctum
Installs: 2 714
Dependents: 0
Suggesters: 0
Security: 0
Stars: 13
Watchers: 1
Forks: 3
Open Issues: 0
Requires
- php: ^8.0.2
- ext-json: *
- illuminate/database: ^9.21
- illuminate/support: ^9.21
- laravel/sanctum: ^3.0
README
Laravel package for generating user authentication feature using Laravel Sanctum
For information & usage about Laravel Sanctum, please refer to Laravel Sanctum documentation.
Get Started
Include the Sanctum Auth package by calling this composer command in project root:
composer require setiawanhu/sanctum-auth
Note: This package is only supporting Laravel 9
Usage
We may publish the Sanctum Auth migration files using vendor:publish
artisan command:
php artisan vendor:publish --provider="Hu\Auth\SanctumAuthServiceProvider"
This command will copy the user role's migration file to /database/migrations folder and will publish the laravel/sanctum
configuration and migration files.
Then, run Sanctum Auth artisan command by running:
php artisan sanctum-auth:controller [{type} --force]
This command will generate the auth routing out of the box.
Note:
-
The
type
argument is optional with default value aretoken
. The controller will be generated based on given argument value. Available types aretoken
andspa
. -
The
--force
option is optional. We may use it for ignoring existing controller.
Then, make User
model to extend AuthModel
class:
use Hu\Auth\AuthModel; class User extends AuthModel { //... }
Using Roles
if the User
has roles, we may use the HasRole
trait to the User
model:
use Hu\Auth\HasRole; class User extends AuthModel { use HasRole; //... }
Then, we add a new field to the users table:
//... Schema::create('users', function (Blueprint $table) { //... $table->unsignedBigInteger('role_id') //... } //...
Then, run the database migration command:
php artisan migrate
Dig Deeper
Please check wiki for more details about sanctum-auth usage