Pros:
fblog_), mitigating naming conflicts in shared databases. Migrations are published separately, enabling version control and rollback safety.User model traits, canComment() logic, SEO meta overrides). Supports third-party integrations (e.g., ShareThis for social sharing, reCAPTCHA for spam protection).Cons:
vendor:publish but are not highly customizable without overriding core templates. May require additional frontend frameworks (e.g., Livewire, Inertia) for complex UIs.Stack Compatibility:
public disk for uploads). Ensure your filesystems.php config aligns with package expectations.User model or custom models via config.Migration Path:
php artisan vendor:publish --tag=filament-blog-migrations to inspect migrations before applying. Test in a staging environment to avoid conflicts with existing tables (e.g., posts, comments).User model, update the config to point to your model and ensure the required columns (name, avatar) exist. Add the HasBlog trait if needed.route.prefix in filamentblog.php to avoid conflicts with existing routes (e.g., /blog vs. /news).php artisan vendor:publish --tag=filament-blog-views).Compatibility Risks:
spatie/laravel-medialibrary for file uploads. Ensure these are compatible with your stack.Medium Risk:
posts, comments) may collide with existing schemas. Mitigate by using the tables.prefix config or custom migrations.README or use Laravel Mix/Vite for versioned assets.Key Questions for Stakeholders:
Core Stack:
tables.prefix config to avoid conflicts.public disk for post images). Configure filamentblog.php to match your filesystems.php.User model is compatible (see User Model section).Extensions:
spatie/laravel-seo) for advanced features.Prerequisites:
composer require filament/filament:"^3.2" -W
php artisan filament:install --panels
Installation:
composer require firefly/filament-blog
php artisan vendor:publish --provider="Firefly\FilamentBlog\FilamentBlogServiceProvider" --tag=filament-blog-config
php artisan vendor:publish --provider="Firefly\FilamentBlog\FilamentBlogServiceProvider" --tag=filament-blog-migrations
php artisan vendor:publish --provider="Firefly\FilamentBlog\FilamentBlogServiceProvider" --tag=filament-blog-views
filamentblog.php (e.g., table prefixes, routes, user model).Database:
php artisan migrate
php artisan filament-blog:upgrade-tables
Filament Panel Integration:
How can I help you explore Laravel packages today?