- What Laravel versions does jeffersongoncalves/filament-plugin-core support?
- The package explicitly targets Laravel 10+, as inferred from its 2026 release date and Filament v3+ dependency. Backward compatibility with older Laravel versions isn’t guaranteed, so pin your Laravel version in `composer.json` (e.g., `^10.0`) to avoid conflicts. Always verify the package’s `composer.json` for exact constraints.
- Can I use this package without Filament in my Laravel app?
- No, this package is *exclusively* designed for Filament plugins. It relies on Filament’s core architecture (e.g., `PluginServiceProvider`, render hooks) and won’t work in Laravel apps using alternative admin frameworks like Nova or Backpack. If you’re not using Filament, this package adds unnecessary overhead.
- How do I register a render hook with this package?
- The package provides helper methods for render-hook registration, typically via the `Plugin` base class or `PackageServiceProvider`. For example, you’d call `$this->registerRenderHook('dashboard.header', callback)` in your plugin’s boot method. Check the package’s source for exact syntax, as undocumented edge cases (e.g., dynamic hook names) may require custom logic.
- Is this package actively maintained? What’s the risk of using it?
- The package has **no visible maintenance activity** (0 stars, no recent updates) despite a 2026 release date, raising long-term viability concerns. If Filament v4 breaks compatibility, this package may stagnate. Mitigate risk by forking it or pinning exact Filament versions (e.g., `^3.0.0`) in `composer.json` to lock dependencies.
- Does this package work with Filament v3.x or only v4.0?
- The package is designed for **Filament v3.x** (based on its architecture and Filament’s 2023–2024 release cycle). If you’re using Filament v4.0+, check for breaking changes in Filament’s hook API or service provider structure, as this package may not align. Always pin your Filament version (e.g., `^3.0`) to avoid surprises.
- How do I structure a plugin using this package’s skeleton?
- The package provides a `Plugin` base class and `PackageServiceProvider` helpers to standardize plugin structure. Start by extending the `Plugin` class, then override methods like `getId()`, `getName()`, and `register()`. Use the `registerRenderHook()` method for UI modifications. Example: `php artisan make:filament-plugin MyPlugin --skeleton=jeffersongoncalves/filament-plugin-core`.
- Will this package slow down my Filament admin panel?
- The package introduces minimal overhead (~1–2MB to vendor space) but adds abstractions like service providers and render hooks. For simple plugins, the impact is negligible. Benchmark performance by comparing a vanilla Filament plugin against one using this package, especially if you’re dealing with high-traffic dashboards or complex hooks.
- Can I use this package for multi-tenant Laravel apps with Filament?
- Yes, the package enforces **service provider isolation**, which aligns well with multi-tenant architectures. Each plugin’s logic remains scoped to its namespace, reducing collision risks. However, ensure your tenant isolation strategy (e.g., database separation) doesn’t conflict with Filament’s plugin registration system.
- What happens if two plugins use the same render hook (e.g., `render:dashboard.header`)?
- The package doesn’t explicitly document collision handling, but Filament’s render hook system typically **overwrites hooks with the same name**. Test this scenario in a staging environment by registering two plugins with identical hooks. If critical, use unique hook names (e.g., `render:dashboard.header.myplugin`) or implement a priority system in your plugins.
- Are there alternatives to this package for Filament plugin development?
- If you’re not tied to this package, consider Filament’s built-in `filament/support` package for core plugin functionality or community packages like `spatie/laravel-filament-resources` for resource-specific extensions. For zero-dependency solutions, use Filament’s native `Plugin` class and avoid third-party abstractions. Evaluate alternatives based on your need for shared helpers vs. simplicity.