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

Message Bus Laravel Package

averor/message-bus

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • CQRS/Event-Driven Architecture Adoption: Enables teams to implement Command Query Responsibility Segregation (CQRS) or Event Sourcing (ES) patterns without heavy infrastructure overhead. Ideal for scaling read/write operations independently.
  • Decoupled Microservices: Facilitates loose coupling between services by abstracting message publishing/consumption, reducing direct dependencies.
  • Build vs. Buy: Avoids reinventing a custom message bus from scratch, saving dev time while maintaining flexibility. Better than RabbitMQ/Kafka for small-to-medium projects where simplicity is prioritized.
  • Roadmap for Scalability: Starts with a lightweight solution that can later integrate with event stores (e.g., EventSauce) or brokers (e.g., Redis) as needs grow.
  • Use Cases:
    • Domain-Driven Design (DDD): Aligns with bounded contexts by encapsulating domain logic in commands/events.
    • Background Jobs: Replaces Laravel Queues for complex workflows requiring retries, sagas, or event chaining.
    • Real-Time Notifications: Powers async event-driven updates (e.g., user activity feeds, inventory alerts).

When to Consider This Package

  • Adopt if:
    • Your team needs CQRS/ES but lacks time/resources for a full-scale solution (e.g., Axon Framework).
    • You’re using Laravel and want a PHP-native alternative to JavaScript/Go-based buses.
    • Your workflows involve chained commands (e.g., order processing: CreateOrderValidatePaymentShipItem).
    • You prioritize convention over configuration (e.g., auto-discovering handlers via PSR-4).
  • Look Elsewhere if:
    • You need enterprise-grade reliability (e.g., Kafka’s persistence, exactly-once delivery).
    • Your system requires cross-language support (this is PHP-only).
    • You’re already invested in a broker (Redis, RabbitMQ) and need tight integration.
    • You need advanced features like dead-letter queues, distributed tracing, or schema validation (consider Laravel Horizon or Pulsar).

How to Pitch It (Stakeholders)

For Executives: "This package lets us adopt CQRS—a proven pattern for scaling complex systems—without the cost of a full event-store solution. It’s like ‘Laravel Queues on steroids’: lightweight, PHP-native, and ready for day-one use. We can start with simple commands/events (e.g., order processing) and expand later if needed. It’s a low-risk way to future-proof our architecture for growth."

For Engineers: *"Averor’s Message Bus gives us a convention-based, zero-config way to implement CQRS/ES in Laravel. Key benefits:

  • No boilerplate: Auto-discovers handlers via PSR-4 (like Laravel’s service providers).
  • Flexible: Works with or without Event Sourcing; can later plug into Redis/RabbitMQ.
  • Laravel-friendly: Integrates with existing queues, jobs, and service containers.
  • Lightweight: ~500 LOC vs. frameworks like Axon (~10K+ LOC). Perfect for prototyping event-driven flows or migrating legacy monoliths to microservices."*

For Architects: *"This fills a gap between Laravel’s built-in queues and heavyweight event stores. It’s ideal for:

  • Greenfield projects needing async workflows (e.g., e-commerce, SaaS).
  • Refactoring monoliths into domain-centric services.
  • Hybrid architectures where some services use ES and others don’t. Trade-off: Less feature-rich than Kafka but 10x faster to implement for PHP stacks."*
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.
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
dmstr/api-platform-utils-bundle
dmstr/api-configuration-bundle
chrisdev/ux-components
baks-dev/finances
emuniq/filament-browser-notifications
syriable/filament-translator
hungnm28/livewire-form
wenprise/eloquent
crudly/encrypted
fadion/bouncy
cuci/prototurk-sdk
gos/pubsub-router-bundle
cuci/prototurk-sdk-symfony
clementtalleu/easyadmin-markdown-bundle