Security Advanced Auth - v1.0.0
Livewire Components
Five components ship with Blade views in plain HTML + Tailwind. Drop them on the user's security settings page or wherever makes sense for your UX.
<livewire:webauthn-credentials-manager />
Lists registered passkeys / security keys. "Add passkey" button opens an enrollment modal; "Delete" with confirmation per credential.
Public state:
credentials(array) — list of registered credentialsshowRegisterModal(bool)newCredentialName(string)registrationOptions(array | null) — options the host JS uses fornavigator.credentials.create()
Browser-side JS responsibilities:
- Listen for
start-webauthn-registration - Call
navigator.credentials.create({publicKey: options}) - Dispatch
completeRegistrationwith the response
<livewire:biometric-manager />
Same shape as the WebAuthn component but for biometric authenticators (Touch ID, Face ID, Windows Hello, Android fingerprint). The default WebAuthnBiometricProvider makes biometric registration work through WebAuthn under the hood.
Public state:
biometrics(array)showEnrollModal(bool)enrollmentOptions(array | null)platformSupported(bool) — set tofalseto disable the "Add biometric" button on devices without biometric support
<livewire:device-manager />
Lists known devices with trust / revoke controls. "Revoke all other devices" button.
Public state:
devices(array) —[{id, name, browser, os, ip_address, last_seen_at, trusted}, ...]currentDeviceId(string | null) — highlights the current devicerevokingDeviceId(string | null) — staging state for confirmation
<livewire:social-accounts-manager />
Lists linked OAuth providers + "available to link" buttons.
Public state:
linkedAccounts(array) —[{provider, provider_user_email, linked_at}, ...]availableProviders(array of strings) — providers not yet linkedunlinkingProvider(string | null) — staging state for confirmation
<livewire:suspicious-activity-list />
Filterable list of suspicious activity for the user (or all users for admins with the appropriate permission).
Public state:
filterSeverity(string)filterType(string)
Customizing views
Publish:
php artisan vendor:publish --tag=security-advanced-auth-views
Publishes the views to resources/views/vendor/security-advanced-auth/livewire/*.blade.php. Laravel resolves overrides before the package defaults.
Common customizations:
- Wrap in your design-system components
- Swap modals for a richer modal library
- Add platform-specific icons (Apple, Google, etc. logos for the social manager)
- Customize copy / translations