A Laravel package that adds Filament v4 resources to view and manage inbound webhooks. It provides:
- A configurable Filament navigation entry for "Webhooks" under a Logs group
- Storage/model for inbound webhook payloads
- Enum of supported webhook providers with icons/colors for the Filament UI
Note: This readme documents what is detectable from the codebase. Where details are unclear, TODO notes are added for follow-up.
- PHP ^8.3
- Laravel (Illuminate Contracts) ^11.0 or ^12.0
- Filament ^4.0
- Composer
Development dependencies (repo contributors): Pest, PHPStan, Larastan, Testbench, Pint
Install via Composer in a Laravel application:
composer require basementdevs/filament-webhooks
The package auto-registers its service provider via the extra.laravel.providers
entry in composer.json.
This package discovers and loads its migrations. Run your app migrations after installing:
php artisan migrate
Publish the config file if you need to customize defaults:
php artisan vendor:publish --tag="filament-webhooks-config"
Config options (config/filament-webhooks.php):
- navigation_group: default "Logs"
- navigation_label: default "Webhooks"
- navigation_icon_inactive / navigation_icon_active: Filament Heroicon enums
- navigation_sort: default 100
- model: Eloquent model class used to store inbound webhooks (defaults to Basement\Webhooks\Models\InboundWebhook)
- providers_enum: Enum class of supported providers (defaults to Basement\Webhooks\Enums\InboundWebhookSource)
If the package ships views under a publish tag, they can be published with:
php artisan vendor:publish --tag="filament-webhooks-views"
Note: The presence and contents of views are not confirmed in the current repo. TODO: Document available views/components.
Once installed in a Filament-enabled Laravel application, a "Webhooks" section should appear in your Filament admin navigation (by default under the "Logs" group). From there you can review inbound webhooks stored by your application.
How inbound webhooks are stored depends on your app integration. This package provides supporting types and actions, including:
- Model:
Basement\Webhooks\Models\InboundWebhook
- Enum:
Basement\Webhooks\Enums\InboundWebhookSource
- Action:
Basement\Webhooks\Actions\StoreInboundWebhook
(implementation details depend on your app)
This repository uses Pest for testing:
composer test
To generate coverage:
composer test-coverage
See CHANGELOG.md for recent changes.
Please see CONTRIBUTING for details. If this file is missing, TODO: add contribution guidelines or update this section.
Please review our security policy on how to report security vulnerabilities. If your repository does not include this path, TODO: add SECURITY.md and update the link.
The MIT License (MIT). See LICENSE.md for more information.