Search by

misaf / vendra-user

misaf

Comprehensive user management module with profiles, authentication, media handling and multi-tenant support

Package info

github.com/misaf/vendra-user

Type:vendra-module

pkg:composer/misaf/vendra-user

Statistics

Installs: 61

Dependents: 5

Suggesters: 0

Stars: 1

Open Issues: 0

v1.12.3 2026-08-22 21:15 UTC

README

Tenant-aware user management for Vendra applications.

Features

  • User model, authentication fields, and tenant-aware storage
  • Filament user administration on configured panels
  • Role and permission integration through Spatie Permission
  • User creation, admin assignment, and permission seeding commands
  • Optional tags resolved through the shared Support capability contract
  • Domain actions for tenant administrator membership and credential/account changes

Requirements

  • PHP 8.4+
  • Laravel 13
  • Filament 5
  • misaf/vendra-multimedia
  • misaf/vendra-support
  • spatie/laravel-permission

Optional:

  • misaf/vendra-tagger — enables assigning user-typed tags through misaf/vendra-support

Installation

composer require misaf/vendra-user
php artisan vendor:publish --tag=vendra-user-migrations
php artisan migrate

Optionally publish configuration and translations:

php artisan vendor:publish --tag=vendra-user-config
php artisan vendor:publish --tag=vendra-user-translations

The service provider and Filament plugin are auto-registered. When an available tenant resolver is bound, users are scoped and stamped automatically. If the provider is installed after migrations have run, use php artisan vendra-tenant:enable {tenant}.

Create users, assign the configured admin role, or seed module data with:

php artisan user:create
php artisan user:assign-admin
php artisan vendra-user:seed

Administrator operations

Use AddTenantAdministratorAction, PromoteTenantAdministratorAction, DemoteTenantAdministratorAction, RemoveTenantAdministratorAction, and SetUserAccountEnabledAction for tenant membership changes. These actions lock the tenant membership boundary and prevent the final enabled administrator from being removed, demoted, or disabled. UpdateUserEmailAction and UpdateUserPasswordAction provide normalized/validated credential changes, framework hashing, and remember-token rotation without exposing stored hashes.

Optional tags

When Tagger is installed, the user form and table expose tags automatically. User imports neither Vendra Tagger nor Spatie Tags; the integration is resolved through Support.

Create tags with the reserved user type before assigning them:

use Misaf\VendraTagger\Models\Tagger;

Tagger::findOrCreate('VIP', type: 'user', locale: 'en');

Testing

Run the package checks from the project root:

php artisan test --compact --testsuite=vendra-user
composer stan

License

MIT. See LICENSE.