Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Laravel Tags Laravel Package

blamodex/laravel-tags

A lightweight Laravel package for adding tags to your Eloquent models. Attach, detach, and sync tags, query models by tag, and manage taggable relationships with a simple, expressive API that fits cleanly into any Laravel app.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit. blamodex/laravel-tags is a conventional Laravel package: a service provider with auto-discovery, publishable config/migrations, a polymorphic taggable pivot, and a trait applied to Eloquent models. That shape fits any standard Laravel application without imposing architectural opinions. v1.1.0 is scoped entirely to "Laravel 13 compatibility," which tells us the package tracks framework majors but says nothing about the internals of the tagging domain itself.

Integration feasibility. Installation is a Composer require plus migration and trait application — a low-ceremony integration. The real feasibility question is the composer constraint. A minor version bump (1.0.0 → 1.1.0) that adds Laravel 13 support is only non-breaking if it widens the constraint (e.g. ^11.0|^12.0|^13.0). If it instead narrows to ^13.0, that is a de facto breaking change shipped under a minor version, and it couples this package's upgrade to a full framework upgrade.

Technical risk. Moderate-low, but under-evidenced. The release note is a single line with no changelog detail, no test-matrix statement, and no deprecation notice. Framework-major compatibility work typically surfaces transitive dependency conflicts, renamed or removed framework APIs, and PHP minimum-version shifts. Secondary risk is project health: single-maintainer package, low release cadence, and no stated support window.

Key questions.

  • Does v1.1.0 widen or narrow the illuminate/* / laravel/framework constraint?
  • Is Laravel 13 GA or pre-release? Is this package tracking a stable target?
  • What changed in composer.json beyond version constraints (PHP floor, dependency bumps)?
  • Are the tag model, trait API, config keys, or migration schema untouched?
  • Is there a CI matrix covering Laravel 11/12/13, and what PHP versions are tested?
  • Any deprecations, security advisories, or open CVEs since v1.0.0?
  • What is the license and the maintainer's stated support/backport policy?

Integration Approach

Stack fit. Drop-in for a Laravel app: composer require, vendor:publish for config/migrations, use HasTags on taggable models, and standard relationship access. No queue, cache, or external service dependency is implied.

Migration path. Pin ^1.0 on the current branch first. Then, in an isolated branch, composer require blamodex/laravel-tags:^1.1 and inspect the lockfile diff. Use composer why-not blamodex/laravel-tags 1.1.0 to surface constraint conflicts directly. Review the GitHub compare diff (v1.0.0...v1.1.0) before accepting the version — do not rely on the release note alone. If the package narrowed to Laravel 13 only, treat this as a coupled framework-with-package upgrade rather than an independent bump.

Compatibility. Confirm the PHP floor (Laravel 13 implies a modern PHP minimum) against your runtime images. Confirm database support for whichever engine you run — polymorphic pivots and LIKE-based tag lookups behave differently on MySQL vs. Postgres vs. SQLite. Check for overlap with any existing tagging, taxonomy, or search packages in the app to avoid duplicate pivot tables.

Sequencing.

  1. Establish the Laravel 13 upgrade decision (this package is now gated on it).
  2. Read the actual diff and composer.json changes.
  3. Run the application's integration tests against a staging copy with production-like tag/pivot row counts.
  4. Validate tag creation, rename, delete, and polymorphic attach/detach behavior explicitly — these are the paths a compatibility bump is most likely to disturb.
  5. Roll out in a maintenance window or behind a feature flag; monitor query latency on tag reads.

Operational Impact

Maintenance. Single-maintainer dependency with infrequent releases. Budget for a fork-and-patch contingency, pin exact versions, and review lockfile diffs on every update. Strongly consider wrapping tagging behind an internal interface or repository so the package is swappable without touching domain code.

Support. GitHub issues are the only channel; assume no SLA. Assign an internal owner, record the escalation path, and document the version you are pinned to and why. Verify the license is compatible with commercial distribution.

Scaling. Tag lookups are join-heavy by nature. Ensure indexes exist on taggable_type, taggable_id, and tag_id, plus a unique index on tag slug/name. Watch for N+1 queries on tag reads — enforce eager loading (with('tags')) at the query layer. At high tag cardinality, consider a cached tag dictionary and precomputed tag-count aggregates rather than live COUNT joins.

Failure modes.

  • Composer constraint conflict that blocks future framework upgrades (highest likelihood).
  • Migration drift if the package ships schema changes in a patch.
  • Orphaned pivot rows on polymorphic deletes without cascade handling.
  • Silent behavior change in query scopes or tag normalization between versions.
  • Abandonment: package pinned to an EOL framework with no patch path.

Ramp-up. Low. A Laravel-fluent developer can integrate in roughly half a day. Plan one to two additional days for hardening: test coverage on attach/detach/rename, index verification, and an admin surface for tag management if the package does not ship one.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table
siberfx/flysystem-wasabi
hollyit/token-replace
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel