- How do I install and register filament-white-label in a Laravel app?
- Install it with Composer using the pinned version, then publish the package config and migrations and run the migrations against your database. Register the plugin in the relevant Filament panel provider, and optionally configure tenant resolution if you want per-tenant branding. Because the package is new, run the install on a branch or staging environment first and confirm the panel still boots cleanly.
- Which Filament, Laravel, and PHP versions does this package support?
- The package targets Filament v5 panels, so it is not a fit if your app is still on Filament v3 or v4. The overview does not publish an exact tested matrix for Laravel and PHP, so check the composer.json constraints and the repository before committing. Pin the exact package version and spike it against your own Filament version rather than assuming compatibility.
- Can I white-label each panel and each tenant separately?
- Yes, branding is configured per panel, with an optional per-tenant override stored as a row. The per-tenant option is the main architectural value if you run a multi-tenant SaaS with a shared admin surface. Treat it as a presentation feature rather than a security boundary, and validate it against your tenancy model and cache scoping.
- How does it hide Filament branding from clients?
- The package lets you set the panel name, logo, favicon, colors, fonts, layout, footer, custom CSS, and login page assets, and it hides Filament branding and references. That gives clients a fully branded backend without editing core Filament files or maintaining a theme fork. After configuring it, click through the login page and a few panel screens to confirm no Filament references remain.
- Is the custom CSS setting safe to expose to tenants?
- The package claims safety guards around CSS, but the sanitization model is not independently evidenced in the overview. Review it yourself, specifically whether it blocks url(), @import, and other exfiltration vectors. If tenants can edit CSS, restrict the setting to trusted administrators or your own template variables instead of free-form input.
- How are logo and favicon uploads validated and stored?
- The package supports logo and favicon customization, but upload validation and disk strategy are not detailed in the overview. Confirm the allowed file types, size limits, and whether uploads are scoped per tenant. Test with at least one non-default storage disk, such as S3 or a private disk, before relying on it in production.
- Do branding changes apply immediately, or does caching get in the way?
- Settings are stored and likely cached per panel and per tenant, so stale CSS or assets after a change is a real risk to check. Clear caches after updating branding and verify behavior with php artisan config:cache enabled. If cache invalidation is not automatic, plan your own hook or deploy step to flush it.
- Will it conflict with my existing custom Filament theme or other panel plugins?
- It may if another plugin or theme also overrides published Filament assets, since feasibility drops for heavily customized themes. The package is intended for standard Filament v5 panels where branding is otherwise done by hand. Install it in a branch and check asset order, CSS precedence, and panel boot with your existing plugins enabled.
- Is this package production-ready, or should I plan to fork it?
- It is new and unproven, with a single v1.0.0 release, low star count, and a small maintainer footprint. Treat it as a bounded pilot rather than a platform dependency, and pin the version you test. Budget for watching releases and possibly vendoring or forking, and keep an in-house panel settings model plus CSS variables as the fallback.
- How do I test and roll back if the plugin breaks a panel?
- Run the spike in staging against one non-critical panel, publish config and migrations, then UAT with two tenants and one default panel. Put tenant resolution behind a feature flag so you can disable overrides without redeploying. To roll back, remove the plugin registration and revert the published config and migrations, then fall back to an in-house settings model with CSS variables.