notwonderful/filament-cloudflare
Integrates Cloudflare with Filament so you can manage zones, DNS records, and cache purges from your admin panel. Simple configuration and ready-to-use resources bring Cloudflare controls directly into your existing Filament dashboard.
Install with Composer and register the Filament plugin in your panel provider:
composer require notwonderful/filament-cloudflare
use NotWonderful\FilamentCloudflare\FilamentCloudflarePlugin;
public function panel(Panel $panel): Panel
{
return $panel
->plugin(FilamentCloudflarePlugin::make());
}
Publish and review the package config first. Look for the Cloudflare API token, zone ID(s), navigation settings, and Filament page/resource registration. Check the package README for the exact publish tag.
Create a scoped Cloudflare API token rather than using a global API key. At minimum, expect to need zone read, DNS edit, and cache purge permissions for the workflows you enable.
Add credentials to .env and keep separate tokens for local/staging/production. After changing env values, run php artisan config:clear if config is cached.
First use case: open the Cloudflare section in your Filament admin panel, select a zone, and manage DNS records. Release 0.1.3 adds DNS records management, so the first practical workflow is listing, creating, editing, and deleting DNS records without leaving the admin panel.
Where to look first: config/filament-cloudflare.php, the plugin class, and the Filament pages/resources under the package’s src/Filament namespace. Confirm the navigation group and route prefix before exposing it to users.
.env and let the panel focus on DNS records and cache purge. For multi-zone accounts, rely on the zone selector/list and make sure users understand which zone they are editing.A, AAAA, CNAME, TXT, and MX; validate name, content, TTL, priority, and proxied status before saving. Use the package’s Filament forms/actions where possible instead of duplicating Cloudflare API calls.0.x package. Expect API, config, and Filament class names to change between minor releases. Pin the version in composer.json and review changelogs before upgrading.403/Authentication error responses and verify zone-level permissions.storage/logs/laravel.log, enable HTTP client logging temporarily, and inspect the Cloudflare response body..env or package config, clear cached config. In production, deploy config changes deliberately rather than editing cached config files.How can I help you explore Laravel packages today?