efficientdev / apps-utils-module
Fetures apps sync and helpful classes for all apps created by upas and dml
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/efficientdev/apps-utils-module
Requires
- php: ^8.0
- illuminate/support: ^9.0|^10.0
README
Apps Utils Module
A Laravel package providing utility components and traits for handling usernames during registration, login, and password reset processes.
📦 Installation
composer require efficientdev/apps-utils-module
🧩 Components
Use the following Blade component in your registration view:
<x-apps-utils::register-username />
🚀 Publishing Assets
Publish UI Components
php artisan vendor:publish --tag=apps-utils-components
Publish Database Migrations
php artisan vendor:publish --tag=apps-utils-migrations
Publish Controllers, Jobs, and More
php artisan vendor:publish --tag=apps-utils
🧠Usage
1. Update Your User
Model
// app/Models/User.php use EfficientDev\AppsUtilsModule\Traits\HasUsername; class User extends Authenticatable { use HasUsername; // ... }
2. Update Auth Controllers
Login Controller
// app/Http/Controllers/Auth/AuthenticatedSessionController.php use EfficientDev\AppsUtilsModule\Traits\UsernameAuthTrait; class AuthenticatedSessionController extends Controller { use UsernameAuthTrait; public function store(Request $request): RedirectResponse { return $this->usernameLogin($request); } // ... }
Password Reset Controller
// app/Http/Controllers/Auth/PasswordResetLinkController.php use EfficientDev\AppsUtilsModule\Traits\UsernameAuthTrait; class PasswordResetLinkController extends Controller { use UsernameAuthTrait; public function store(Request $request): RedirectResponse { return $this->sendUsernameBasedResetLink($request); } }
Registration Controller
// app/Http/Controllers/Auth/RegisteredUserController.php use EfficientDev\AppsUtilsModule\Traits\ValidatesUsername; class RegisteredUserController extends Controller { use ValidatesUsername; public function store(Request $request) { $request->validate([ 'username' => $this->usernameRules(), 'email' => ['required', 'string', 'email', 'max:255'], 'password' => ['required', 'confirmed', Rules\Password::defaults()], ]); $user = User::create([ 'username' => $request->username, 'email' => $request->email, 'password' => Hash::make($request->password), ]); Auth::login($user); return redirect(RouteServiceProvider::HOME); } }
✅ Summary
This module makes it easy to integrate username-based authentication into your Laravel app, including:
- Registration form field
- Login with username
- Username validation and database support
- Password reset via username