aciliainternet/stof-doctrine-extensions-bundle
Symfony bundle integrating the Stof Doctrine Extensions into your app, enabling features like sluggable, timestampable, translatable, and more. Provides configuration and wiring to use Doctrine extensions with minimal setup.
Timestampable, Sluggable, Sortable, Tree, Loggable), which are useful for common ORM patterns but may require custom validation or business logic adjustments to fit modern Laravel/PHP ecosystems.DependencyInjection, EventDispatcher).spatie/laravel-medialibrary (for trees), artesaos/seotools (slugs).owen-it/laravel-auditing, spatie/laravel-activitylog.created_at, updated_at) or laravel-model-caching.DependencyInjection (Laravel uses Service Container).EventDispatcher (Laravel uses Events/Listeners).Str::slug() or spatie/laravel-seo-tools.| Option | Feasibility | Effort | Risk | Recommendation |
|---|---|---|---|---|
| Direct Integration | ❌ Low | High | Critical | Avoid unless legacy constraint. |
| Feature-by-Feature Port | ⚠️ Medium | Very High | High (maintenance) | Only if no Laravel alternatives. |
| Use Laravel Alternatives | ✅ High | Low | Low | Preferred (e.g., Spatie packages). |
| Custom Implementation | ✅ High | Medium | Medium | For unique use cases. |
Symfony/Component/DependencyInjection, Symfony/Bridge/Doctrine, etc.—not available in Laravel.Extension\ConfigurableExtension with a Laravel Service Provider.EventListeners to Laravel Events.Doctrine\ORM\Event\LifecycleEventArgs to Eloquent Model Events.Timestampable).spatie/laravel-activitylog have active maintenance, documentation, and GitHub discussions.Tree, Loggable) require custom table structures.| Risk | Likelihood | Impact | Mitigation |
|---|---|---|---|
| Bundle Incompatibility | High | Critical (breaks ORM) | Avoid; use Laravel alternatives. |
| PHP 8.x Deprecations | Medium | High (runtime errors) | Port to PHP 8.x or use polyfills. |
| Doctrine Version Mismatch | High | High (query failures) | Test with Laravel’s Doctrine version. |
| Custom Logic Conflicts | Medium | Medium (bugs) | Isolate in a separate service layer. |
| Maintenance Abandonment | High | High (tech debt) | Prefer actively maintained packages. |
DependencyInjection.EventManager.Service Container and Events.How can I help you explore Laravel packages today?