Download the PHP package somework/cqrs-bundle without Composer

On this page you can find all versions of the php package somework/cqrs-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package cqrs-bundle

SomeWork CQRS Bundle

CI codecov PHPStan Level 8 Latest Version Downloads

A Symfony bundle that wires Command, Query, and Event buses on top of Symfony Messenger. It auto-discovers handlers via PHP attributes, provides a configurable stamp pipeline, and ships with testing utilities and production-grade patterns.

Why this bundle?

Symfony Messenger is a powerful transport layer, but it leaves CQRS wiring as an exercise for the developer. This bundle fills the gap:

Architecture

How does it compare?

Capability Raw Messenger CQRS Bundle Ecotone
Handler discovery Manual YAML tags or #[AsMessageHandler] #[AsCommandHandler] / #[AsQueryHandler] / #[AsEventHandler] with auto-discovery Attribute-based with conventions
Type safety Single MessageBusInterface Separate CommandBus, QueryBus, EventBus with typed dispatch methods Separate gateway interfaces
Bus abstraction You build it Three buses with sync/async routing, DispatchMode enum Command/Query/Event buses built-in
Retry configuration Per-transport YAML only Per-message-class via RetryPolicy interface + resolver hierarchy Per-endpoint via attributes
Testing support InMemoryTransport FakeBus implementations with assertDispatched() + callback assertions Test support module
Async routing routing YAML config DispatchMode + #[Asynchronous] attribute + per-message transport mapping Async via polled endpoints
Stamp pipeline Manual stamp attachment Composable StampDecider pipeline with priority ordering Interceptors (before/after/around)
Event ordering Not built-in SequenceAware interface + AggregateSequenceStamp Built-in aggregate versioning
Transactional outbox Not built-in OutboxStorage interface + DBAL implementation Built-in with Doctrine
Sagas / Process managers Not built-in Not built-in Built-in saga support
Event sourcing Not built-in Not built-in Built-in event sourcing
OpenTelemetry Not built-in Bridge middleware with trace spans Not built-in
Learning curve Low (part of Symfony) Low (thin layer over Messenger) Moderate (own conventions)
Dependencies Symfony only Symfony Messenger Ecotone framework

Choose raw Messenger when your app has simple dispatch needs and you want zero additional dependencies. Choose this bundle when you want structured CQRS buses, per-message configuration, and testing utilities while staying close to Messenger. Choose Ecotone when you need sagas, event sourcing, or a full CQRS/ES framework.

Feature matrix

Core

Stamp Pipeline

Patterns

Developer Experience

Observability

Integration

Installation

Requirements

With Symfony Flex (recommended)

Flex automatically registers the bundle in config/bundles.php and creates a commented config/packages/somework_cqrs.yaml with all available options.

Without Symfony Flex

Install the bundle via Composer:

Then register it manually in config/bundles.php:

Create config/packages/somework_cqrs.yaml (see docs/flex-recipe/ for a template with all available options).

Verify the installation

Run the bundled console tooling to verify the bundle is registered:

Flex Recipe: The recipe files are in docs/flex-recipe/ and are pending submission to symfony/recipes-contrib. Until published, manual bundle registration is required.

Quick start

Step 1 -- Define a command message

Step 2 -- Create the handler

Step 3 -- Inject the bus and dispatch

Documentation

Full documentation is available at somework.github.io/cqrs.

Advanced topics

License

MIT. See LICENSE.


All versions of cqrs-bundle with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
symfony/config Version ^7.2
symfony/console Version ^7.2
symfony/dependency-injection Version ^7.2
symfony/framework-bundle Version ^7.2
symfony/http-kernel Version ^7.2
symfony/messenger Version ^7.2
psr/log Version ^3.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package somework/cqrs-bundle contains the following files

Loading the files please wait ...