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 Store Doctrine Adapter Laravel Package

prooph/event-store-doctrine-adapter

Doctrine DBAL adapter for Prooph Event Store. Stores and loads event streams using Doctrine connections, with support for transactional appends and stream persistence in relational databases. Useful for event-sourced PHP/Laravel apps needing DB-backed storage.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Event Sourcing Adoption: Enables teams to implement event sourcing in Laravel/PHP applications without requiring a NoSQL database, leveraging existing Doctrine infrastructure.
  • Legacy System Modernization: Allows gradual migration of monolithic systems to event-driven architectures by persisting events in relational databases.
  • Consistency with Doctrine: Supports teams already using Doctrine ORM/DBAL, reducing learning curves and tooling fragmentation.
  • Auditability & Compliance: Facilitates immutable event storage for regulatory or audit requirements by leveraging transaction-safe event appends.
  • Hybrid Architecture: Enables coexistence of event-sourcing patterns with traditional CRUD operations in the same application.
  • Build vs. Buy Decision: Avoids reinventing event store persistence logic, reducing development time and maintenance overhead.
  • Roadmap for Scalability: Provides a foundation for future extensions (e.g., event projections, CQRS) while keeping the core event store simple.

When to Consider This Package

  • Use when:

    • Your Laravel/PHP app already uses Doctrine DBAL/ORM and you want to avoid introducing a new database layer.
    • You need event sourcing but prefer relational databases for their transactional guarantees and schema flexibility.
    • Your team is familiar with Doctrine and wants to minimize tooling changes.
    • You require immutable event storage with ACID compliance for critical workflows (e.g., financial systems, healthcare).
    • You’re building a greenfield project or migrating an existing system and want to future-proof for event-driven patterns.
  • Look elsewhere when:

    • You need high-throughput event storage (this package is optimized for relational databases, not distributed systems like Kafka or specialized event stores).
    • Your team lacks Doctrine expertise or prefers a simpler, non-relational event store (e.g., spiral/event-sourcery or php-event-store).
    • You require advanced event store features (e.g., time-travel debugging, event versioning) not covered by Prooph’s core or this adapter.
    • The last release date (2016) is a concern—consider evaluating maintenance status or forking if critical updates are needed.
    • You’re targeting microservices where polyglot persistence (e.g., MongoDB, PostgreSQL) is preferred over Doctrine-centric solutions.

How to Pitch It (Stakeholders)

For Executives: "This package lets us adopt event sourcing—a powerful pattern for auditability, scalability, and real-time systems—without adding new databases or tools. By leveraging our existing Doctrine infrastructure, we reduce risk, lower costs, and future-proof our architecture for complex workflows. It’s a low-friction way to modernize legacy systems or build resilient new ones, all while keeping data integrity through transactions."

For Engineers: "If we’re already using Doctrine, this adapter lets us persist events in our relational database without sacrificing Prooph’s event store API. It’s transaction-safe, schema-aware, and extensible—meaning we can start small (e.g., audit logs) and scale to full event sourcing later. The tradeoff? We’re tied to Doctrine, but that’s a net win if we’re already invested in it. Just be aware it’s not actively maintained; we’d need to vet forks or plan for potential long-term upkeep."

For Architects: *"This fills a gap for teams needing event sourcing in Laravel/PHP while avoiding NoSQL. Key benefits:

  • Consistency: Events and aggregates stay in sync via Doctrine transactions.
  • Flexibility: Custom table layouts and serialization let us adapt to our schema needs.
  • Tooling: Works with Doctrine migrations, queries, and tooling we already use. Downside: The 2016 release date suggests we’d need to validate its fitness for modern Laravel (e.g., PHP 8.x, Doctrine 3.x). If we proceed, we should treat it as a ‘build’ with potential forks or wrappers to address gaps."*
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.
daikazu/eloquent-salesforce-objects
unseen-codes/chat
romalytar/yammi-jobs-monitoring-laravel
kisame76/filament-db-table-state
nqxcode/laravel-lucene-search
dpfx/laravel-livewire-wizards
workos/workos-php-laravel
sofa/laravel-global-scope
nawasara/auth-primitives
adhocrat-io/arkhe-main
make-dev/orca-harpoon
itsemon245/lamet
baks-dev/dashboard
amoifr/pickle-panther-bundle
make-dev/orca
dmstr/symfony-system-resources-bundle
dmstr/symfony-job-queue-bundle
dmstr/openapi-json-schema-bundle
dmstr/keycloak-security-bundle
dmstr/doctrine-audit-log-bundle