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

v1.0.1 2025-10-17 21:13 UTC

This package is auto-updated.

Last update: 2025-10-17 21:09:41 UTC


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