Weave Code
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

Entity Change Watch Bundle Laravel Package

actiane/entity-change-watch-bundle

Symfony bundle to watch Doctrine entity lifecycle changes. Configure per-entity callbacks on create, update (all or specific properties), and delete. Invoke tagged services after flush with entity, changed properties, and EntityManager; supports pre-flush via flush:false.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Event-Driven Architecture: Enables seamless integration of business logic tied to entity lifecycle events (create, update, delete) without polluting controllers or services with direct Doctrine event handling.
  • Audit & Compliance: Facilitates automated logging, validation, or notifications for critical entity changes (e.g., financial records, user permissions).
  • Decoupled Services: Allows services to react to entity changes without tight coupling (e.g., triggering a notification service when a User is updated).
  • Roadmap for Observability: Foundation for future features like real-time change feeds, analytics, or workflow automation tied to entity state transitions.
  • Build vs. Buy: Avoids reinventing Doctrine lifecycle event listeners; leverages a pre-built, configurable solution for common use cases.

When to Consider This Package

  • Use Case Fit: Ideal for applications where entity state changes require consistent, declarative side effects (e.g., syncing with external systems, enforcing business rules).
  • Avoid If:
    • You need real-time updates (consider WebSockets or Doctrine extensions like Gedmo).
    • The package is too stale (last release in 2017; evaluate maintenance risk).
    • Your use case requires complex event composition (e.g., chaining events; consider Symfony’s Messenger or EventDispatcher).
    • You’re using non-Doctrine ORMs (e.g., Eloquent, Propel).
  • Alternatives:

How to Pitch It (Stakeholders)

For Executives: "This package lets us automate critical actions—like notifications, validations, or syncs—whenever core data changes (e.g., orders, users). It’s like setting up ‘triggers’ for our database without writing custom code, reducing bugs and speeding up development. Low risk (MIT license), but we’d need to vet its long-term support."

For Engineering: "A lightweight way to hook into Doctrine lifecycle events (pre/post persist/remove/update) via YAML config. Example: Auto-send an email when a User updates their email field, or log changes to sensitive fields. Tradeoff: Last updated in 2017, but the pattern is battle-tested. We’d need to:

  1. Test edge cases (e.g., nested entity updates).
  2. Compare with rolling our own listener or using Symfony’s EventDispatcher.
  3. Plan for future maintenance if the package stagnates."

Key Asks:

  • "Can we prototype this for [high-priority use case] in 2 weeks?"
  • "What’s the cost of forking if maintenance stops?"
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.
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope