toro/tagging-bundle
Toro Tagging Bundle adds flexible tagging to Symfony applications: attach tags to any entity, query and filter by tag, and manage tags through a simple service and Doctrine integration. Includes taggable behavior, tag clouds, and helpers for building tag-based search and navigation.
Package identity and framing risk
The most important finding is a framing mismatch that must be resolved before any engineering time is spent: toro/tagging-bundle is named and structured as a Symfony bundle (ToroTaggingBundle), not a Laravel package. A Laravel/PHP framing is likely incorrect. A Symfony bundle registered via AppKernel/bundles.php and shipping Symfony DI configuration is not drop-in usable in Laravel — it would require either a Symfony application or a nontrivial adapter layer. Confirm the target framework before scoping anything.
Architecture fit
getContainer, non-autowired services). Fit against a modern Symfony 5/6/7 or Laravel 10/11 codebase is expected to be poor without rewriting the wiring.Integration feasibility
Technical risk
Key questions for the maintainer / sponsor
Stack fit
services.yaml with autowiring, replace annotation mappings with attributes, and update to the current Doctrine versions.spatie/laravel-tags. The bundle's value is the data model idea, not the code.Migration path
Compatibility
composer require succeeds; expect constraint conflicts and abandoned transitive packages (composer audit and composer outdated immediately after install).Sequencing
Default recommendation: reimplement the domain, do not adopt the dependency. The domain is small and the maintenance burden of the package is not.
Maintenance
composer.json entry, your own repository, your own CI. Do not depend on upstream.Support
Scaling
(taggable_type, taggable_id).JOIN + DISTINCT and degrade at high cardinality.COUNT(*) over the full pivot on every page render.Failure modes
Ramp-up
Bottom line for the decision record Zero adoption signal, eight years without a release, and an unresolved framework mismatch make this a do-not-adopt on dependency grounds. The domain it covers is small enough to own. Recommend a two-day spike capped in scope which either (a) confirms the framework mismatch and closes the evaluation, or (b) produces the schema and API inventory needed to reimplement natively.
How can I help you explore Laravel packages today?