Passkeys
CommunityUse passkeys in your Filament app
filament/
namespace. Review the source and install at your own risk. Found
malware or an unresolved security issue the author won't
address?
Report it
.
Author:
MarcelWeidum
Documentation
- Version compatibility
- Installation
- Upgrading from the Spatie passkeys package
- Common problems
- Contributing
- Security Vulnerabilities
- Credits
- License
Use passkeys in your filament app.
The current 4.x version uses Laravel's native passkeys package.
#Version compatibility
| Package version | Filament version | Passkeys backend | Use this when |
|---|---|---|---|
4.x |
Filament v5 | Laravel native passkeys (laravel/passkeys) |
Starting a new Filament v5 app or upgrading to Laravel native passkeys |
3.x |
Filament v5 | Spatie passkeys (spatie/laravel-passkeys) |
Staying on the older Spatie-backed implementation |
2.x |
Filament v3 or v4 | Spatie passkeys (spatie/laravel-passkeys) |
Using Filament v3 or v4 |
#Installation
- Install the package via composer:
composer require marcelweidum/filament-passkeys
- Add Laravel's passkey interface and trait to your user model
namespace App\Models;
use Laravel\Passkeys\Contracts\PasskeyUser;
use Laravel\Passkeys\PasskeyAuthenticatable;
// ...
class User extends Authenticatable implements PasskeyUser
{
use HasFactory, Notifiable, PasskeyAuthenticatable;
// ...
}
- Publish and run the migrations
php artisan vendor:publish --tag="passkeys-migrations"
php artisan migrate
Laravel registers the passkey routes automatically. You can optionally publish Laravel's passkeys config:
php artisan vendor:publish --tag="passkeys-config"
- Add passkeys plugin to your Filament Panel
Add passkeys to a panel by adding the class to your Filament Panel's plugin() or plugins([]) method.
use MarcelWeidum\Passkeys\PasskeysPlugin;
public function panel(Panel $panel): Panel
{
return $panel
->plugins([
PasskeysPlugin::make(),
])
}
Don't forget to add ->profile() to you panel as well to manage your passkeys.
#Upgrading from the Spatie passkeys package
This package no longer uses spatie/laravel-passkeys. If you are upgrading an existing 3.x application to the native Laravel passkeys version, follow the 3.x to native Laravel upgrade guide.
For existing Spatie-backed applications, do not run Laravel's fresh create_passkeys_table migration against the existing table. The upgrade guide uses this package's conversion migration instead.
(Optional) If you want to customize the translations, you can publish the translations by running:
php artisan vendor:publish --tag="filament-passkeys-translations"
#Common problems
If you're having problems creating passkeys on your profile page, check if your APP_URL in the .env file is set to the correct url of the application.
#Contributing
Please see CONTRIBUTING for details.
#Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
#Credits
#License
The MIT License (MIT). Please see License File for more information.
The author
From the same author
Featured Plugins
A selection of plugins curated by the Filament team
Custom Dashboards
Let your users build and share their own dashboards with a drag-and-drop interface. Define your data sources in PHP and let them do the rest.
Filament
Data Lens
Advanced Data Visualization for Laravel Filament - a premium reporting solution enabling custom column creation, sophisticated filtering, and enterprise-grade data insights within admin panels.
Padmission
Custom Fields
Eliminate custom field migrations forever. Let your users create and manage form fields directly in Filament admin panels with 20+ built-in field types, validation, and zero database changes.
Relaticle