This project shows how to build a basic blog with admin management for posts, categories, tags, and authors. It features role-based permissions via Filament Shield and includes the free ZenBlog frontend theme.
This example is based on the CMS Blog system.
All roles are created, and permissions are granted using the UI of the Filament Shield plugin.
The Post Resource must have additional publish permission. To add such additional permissions, you can define them in the Shield config file under the resources.manage section for the specific resource.
config/filament-shield.php:
use App\Filament\Resources\Posts\PostResource; return [ // ... 'resources' => [ 'subject' => 'model', 'manage' => [ PostResource::class => [ 'viewAny', 'view', 'create', 'update', 'delete', 'publish', ] ], // ... ], // ...];