Passkeys plugin screenshot
Dark mode ready
Multilingual support
Supports v5.x

Passkeys

Community

Use passkeys in your Filament app

Tags: Panel Authentication Spatie Integration
Supported versions:
5.x 4.x
MarcelWeidum avatar Author: MarcelWeidum

Package health

Beta

Automated checks of this plugin's Composer package

80 / 100
Security 64
Maintenance 100
Ecosystem 100
15 checks
  • Failed: GitHub Actions pinned to SHA View details on Plumb
  • Skipped: GitLab CI includes pinned to SHA
  • Passed: Open security advisories
  • Passed: Dependabot PR responsiveness — No open Dependabot PRs.
  • Skipped: Renovate MR responsiveness
  • Warning: Dependabot or Renovate configured — Updater does not cover the JavaScript ecosystem, which has a committed lockfile.
  • Failed: Dependency update cooldown configured No cooldown configured in .github/dependabot.yml. View details on Plumb
  • Passed: Provides a security policy
  • Passed: Abandoned or archived — No consulted source marks the package abandoned (packagist, github).
  • Passed: Commit and release recency — Active: last commit 0 days ago; last release 17 days ago.
  • Passed: composer.lock not committed by library composer.lock is absent from the released dist archive.
  • Passed: Dist archive is lean
  • Passed: Current Laravel version supported — Package dependencies resolve together with current Laravel 13.0.
  • Passed: Current PHP version supported — Constraint ^8.2 supports current PHP 8.5.
  • Skipped: Current Symfony version supported
Third-party plugin. This is built by the community, not the Filament team. Filament does not review, endorse, or vet the security of plugins outside the 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 .
Powered by Plumb Last scanned 3 weeks ago

Documentation

Latest Version on Packagist Total Downloads GitHub Code Style Action Status Filament 4.x Filament 5.x

Use passkeys in your filament app. The current 4.x version uses Laravel's native passkeys package.

Filament Passkeys cover

 

#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

  1. Install the package via composer:
composer require marcelweidum/filament-passkeys
  1. 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;

    // ... 
}
  1. 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"
  1. 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

MarcelWeidum avatar Author: MarcelWeidum

Marcel is a software engineer and an enthusiastic open-source contributor & maintainer.

Plugins
2
Stars
136

From the same author