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

Event Engine Symfony Bundle Laravel Package

arnedesmedt/event-engine-symfony-bundle

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Event-Driven Architecture (EDA) Adoption: Enables seamless integration of Event Engine (a PHP-based event sourcing/CQRS framework) into Symfony applications, reducing friction for teams already using Symfony’s ecosystem (e.g., Messenger, Cache, Lock).
  • Build vs. Buy: Buy for teams needing a pre-built bridge between Event Engine and Symfony, avoiding reinventing event store/messaging integration. Build only if requiring highly customized event schemas or non-standard workflows.
  • Roadmap Priorities:
    • Accelerate development of real-time systems (e.g., notifications, auditing, workflows) by leveraging event sourcing without Symfony-specific boilerplate.
    • Reduce coupling between business logic and infrastructure by abstracting event storage (PostgreSQL via event-engine/php-postgres-document-store).
    • Enable eventual consistency patterns for microservices or monoliths with Symfony frontends.
  • Use Cases:
    • Audit Trails: Track immutable state changes (e.g., financial transactions, user actions) with Event Sourcing.
    • Decoupled Services: Offload event processing to background workers (Symfony Messenger) while maintaining Symfony’s request/response cycle.
    • Schema Validation: Enforce event structure via JSON Schema (via opis/json-schema), improving data integrity.
    • Testing: Simplify event-driven testing with team-blue/php-test-request and Prooph’s event store.

When to Consider This Package

  • Adopt if:

    • Your team uses Symfony 6/7 and needs Event Engine integration without low-level PHP boilerplate.
    • You prioritize event sourcing/CQRS but want to avoid vendor lock-in (Event Engine is framework-agnostic).
    • Your use case aligns with PostgreSQL for event storage (not SQLite/MySQL).
    • You’re comfortable with Symfony’s dependency injection and Messenger components for async processing.
    • You need basic event validation (JSON Schema) but not complex domain modeling (e.g., Prooph’s full event store).
  • Look elsewhere if:

    • You require real-time event processing (e.g., WebSockets) beyond Symfony’s Messenger—consider Laravel Echo or Pusher.
    • Your stack includes non-Symfony PHP frameworks (e.g., Laravel, Lumen)—use Event Engine’s native PHP packages instead.
    • You need advanced event modeling (e.g., Prooph’s event store with projections)—this bundle is a thin wrapper.
    • Your team lacks Symfony expertise—maintenance overhead may outweigh benefits.
    • You’re using PHP <8.1 or need alternative databases (e.g., MongoDB, Redis).

How to Pitch It (Stakeholders)

For Executives:

*"This package lets us adopt event-driven architecture with minimal risk by bridging Event Engine (a battle-tested PHP event-sourcing framework) to our existing Symfony stack. It’s like adding a ‘time machine’ for our data—every state change is recorded as an immutable event, enabling audits, replays, and real-time updates without rewriting core systems. For example, we could use it to:

  • Cut fraud by replaying user transactions from events.
  • Speed up releases by decoupling services (e.g., notifications) from the main app.
  • Future-proof our architecture for microservices without big upfront costs. The MIT license and Symfony integration mean we avoid lock-in, and the low GitHub stars suggest early adoption—ideal for a pilot."*

For Engineering:

*"This bundle glues Event Engine to Symfony via:

  1. Event Storage: Uses Prooph’s PostgreSQL-backed event store (no custom DB schema needed).
  2. Messaging: Integrates with Symfony Messenger for async event handling (e.g., dispatching emails).
  3. Validation: Enforces event schemas via JSON Schema (reduces runtime errors).
  4. Testing: Includes tools like php-test-request to simulate event flows.

Pros:

  • Faster dev: No need to build event store/messaging from scratch.
  • Flexible: Works with Symfony’s DI, Cache, and Lock components.
  • Lightweight: Only ~400 stars but stable (PHP 8.1+).

Cons:

  • Not generic: Configuration is opinionated—fork if you need custom event types.
  • PostgreSQL-only: Not ideal for teams using other databases.
  • Symfony-only: Won’t work with Laravel or other frameworks.

Recommendation: Use for audit logs, workflows, or eventual consistency where event sourcing adds value. Pilot with a non-critical feature first."*

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.
terminal42/code-quality-tools
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky