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

Doctrine Behaviors Laravel Package

miets/doctrine-behaviors

Doctrine ORM behavior extensions: reusable traits, event listeners and mappings that add timestampable, sluggable, soft-deletable, blameable and tree behavior to entities. Cuts boilerplate, keeps models clean, and drops into existing Doctrine setups with simple config.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for cross-cutting entity behaviors. This package (Traits for Timestampable, SoftDeletable, Sluggable, Translatable, Blameable, Tree) is exactly the kind of boilerplate a team re-writes per entity. A PM can use it to size the "commodity plumbing" work and decide whether to spend engineering weeks on it or buy it free.
  • Framework and ORM roadmap. It answers a concrete question: "Do we move to Symfony 7 with Doctrine ORM, and is the behavior layer ready?" The package exists specifically to bridge Symfony 7 compatibility, which flags an upstream gap worth knowing about.
  • Localization/i18n roadmap. The Translatable behavior determines how content is stored and what it costs to add locale #4, #5. That's a pricing and market-expansion input, not just a schema detail.
  • Compliance and audit posture. Blameable + Timestampable + SoftDeletable map directly to audit-trail, retention, and GDPR erasure-vs-retention requirements. Choosing these behaviors early is cheaper than retrofitting audit columns after a compliance review.
  • Data modeling for navigation and taxonomy. Tree behavior informs whether category/nav hierarchies are cheap to restructure (nested set) or expensive (adjacency list). That affects roadmap cost for content-heavy features.
  • Vendor and dependency risk. 2 stars, 0 dependents, last release Feb 2024, score 0.04 — a PM should treat this as a decision about accepting a single-maintainer dependency, not just a technical convenience.

When to Consider This Package

Adopt when:

  • You are on Symfony 7 + Doctrine ORM (note: this is not a Laravel/Eloquent package — the prompt's framing doesn't match reality, and that mismatch alone is worth catching before it reaches a sprint).
  • You're migrating from knplabs/doctrine-behaviors and need Symfony 7 compatibility now.
  • You need the standard behavior set and would otherwise duplicate near-identical trait code across dozens of entities.
  • The surface is internal/small enough that a low-maintenance, single-maintainer fork is tolerable — ideally vendored or forked internally.

Look elsewhere when:

  • You're building on Laravel. Use Eloquent's built-in SoftDeletes/timestamps plus spatie/laravel-sluggable, astrotomic/laravel-translatable, owen-it/laravel-auditing. This package does not apply.
  • You need an SLA, guaranteed security patching, or broad community validation (0 dependents is a hard stop for most enterprise dependency reviews).
  • The behavior set you need is small — writing SoftDeletable and Timestampable yourself is an afternoon, not a dependency.
  • Upstream knplabs/doctrine-behaviors has caught up on Symfony 7, or you're staying on Symfony 6.x.
  • Opportunity score (44.49) is interesting but unearned: the real market gap is Symfony 7 behavior support, and this fork shows no traction capturing it.

How to Pitch It (Stakeholders)

Executives: A small, free MIT library that supplies standard, industry-familiar entity behaviors — created/updated timestamps, soft deletes, URL slugs, multi-language content, audit attribution, and hierarchies. Adopting it saves roughly a few engineering weeks of plumbing. The concepts are proven; the specific package is a one-person fork with essentially no adoption, so treat it as a code sample we can vendor, not a vendor relationship. Cost is zero; the risk is maintenance, not money.

Engineering: This is knplabs/doctrine-behaviors lineage patched for Symfony 7. Adopting it is low technical risk because the behaviors are simple, testable, and easily replaced — but high supply-chain risk given 2 stars, 0 dependents, and no release since Feb 2024. Recommendation: run a short spike to verify Symfony 7 support and test coverage, then fork it internally (or wrap it behind our own interfaces) so we can swap it out in a day. If the actual ask was a Laravel package, this is the wrong ecosystem entirely — stop and use the Spatie equivalents instead.

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.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource