This package adds a page to the Filament Admin panel to view the activity log generated by spatie/laravel-activitylog
.
Plugin Version | Filament Version | PHP Version |
---|---|---|
0.1.x | 2.x | > 8.0 |
1.x | 3.x | > 8.1 |
Install via Composer.
Requires PHP 8.0 and Filament 2.0
composer require pxlrbt/filament-activity-log
Warning This plugin only offers a page to show activities related to your model. You need
spatie/laravel-activitylog
installed and configured for it to work. It is important you are using theLogsActivity
trait as per Spatie's docs for this work as we use the '->activities()' method of the trait.
Make sure you use a custom theme and the vendor folder for this plugins is published, so that it includes the Tailwind CSS classes.
Create the page inside your resources Pages/
directory. Replace UserResource
with your resource.
<?php namespace App\Filament\Resources\UserResource\Pages; use pxlrbt\FilamentActivityLog\Pages\ListActivities; class ListUserActivities extends ListActivities{ protected static string $resource = UserResource::class;}
Add the page to your resource's getPages()
method.
public static function getPages(): array{ return [ 'index' => Pages\ListUsers::route('/'), 'create' => Pages\CreateUser::route('/create'), 'activities' => Pages\ListUserActivities::route('/{record}/activities'), 'edit' => Pages\EditUser::route('/{record}/edit'), ];}
Use a Filament action to link to your from your table or page.
$table->actions([ Action::make('activities')->url(fn ($record) => YourResource::getUrl('activities', ['record' => $record]))]);
If you want to contribute to this packages, you may want to test it in a real Filament project:
/filament-activity-log
directory, create a branch for your fix, e.g. fix/error-message
.Install the packages in your app's composer.json
:
"require": { "pxlrbt/filament-activity-log": "dev-fix/error-message as main-dev",},"repositories": [ { "type": "path", "url": "filament-activity-log" }]
Now, run composer update
.
Dennis, a Filament core-team member, is dedicated to delivering high-quality plugins for your Filament projects. He is a freelance full-stack developer who works on several Laravel projects either individually or as part of small teams. In his work, he utilizes both Livewire and Inertia.