Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Filament Sanctum Laravel Package

devtical/filament-sanctum

Filament Sanctum adds a Filament panel for managing Laravel Sanctum API tokens. Create and view personal access tokens from the admin UI, with publishable config and translations for easy customization.

View on GitHub
Deep Wiki
Context7

Filament Sanctum

Manage Laravel Sanctum personal access tokens from your Filament panel.

Installation

Install the package and Sanctum:

composer require devtical/filament-sanctum laravel/sanctum

Publish Sanctum and run migrations:

php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate

Add the HasApiTokens trait to your user model:

use Laravel\Sanctum\HasApiTokens;

class User extends Authenticatable
{
    use HasApiTokens;
}

Register the plugin in your Filament panel provider:

use Devtical\Sanctum\SanctumPlugin;

public function panel(Panel $panel): Panel
{
    return $panel
        // ...
        ->plugin(SanctumPlugin::make());
}

Publish the package config (optional):

php artisan vendor:publish --tag=filament-sanctum-config

Publish translations (optional):

php artisan vendor:publish --tag=filament-sanctum-translations

Configuration

Navigation

By default, the Sanctum page appears in the user menu. To show it in the sidebar instead:

// config/filament-sanctum.php
'navigation' => [
    'slug' => 'sanctum',
    'sidebar_menu' => [
        'enabled' => true,
    ],
    'user_menu' => [
        'enabled' => false,
    ],
],

Abilities

Customize the abilities available when creating a token:

'abilities' => [
    'columns' => 4,
    'allow_expiration' => true,
    'default_expiration_days' => 30,
    'expiration_presets' => [7, 30, 60, 90],
    'list' => [
        'posts:read' => 'Read posts',
        'posts:write' => 'Write posts',
    ],
],

Authorization

Restrict access to the Sanctum page using a Laravel gate:

'authorization' => [
    'enabled' => true,
    'gate' => 'manage-api-tokens',
],

Define the gate in a service provider:

Gate::define('manage-api-tokens', fn (User $user) => $user->isAdmin());

Testing

composer test

Format code:

composer format

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email w.kristories@gmail.com instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky