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

Tactician Laravel Package

league/tactician

Tactician is a small, pluggable PHP command bus. Route commands to handlers and extend behavior via middleware and plugins (logging, containers, Doctrine transactions, queuing, events, locking). Install with Composer and integrate with your framework of choice.

View on GitHub
Deep Wiki
Context7

Tactician

Scrutinizer Code Quality Code Coverage Build Status MIT License SensioLabsInsight

A small, pluggable command bus.

See the full docs or the examples directory to get started.

Install

Using Composer:

composer require league/tactician

Plugins

The core Tactician package is small but there are several plugin packages that extend the usefulness of Tactician:

  • Logger: Adds PSR-3 logging support for receiving, completing or failing commands.
  • Container: Lazy load handlers from any container implementing container-interop.
  • Doctrine: Wraps commands in separate Doctrine ORM transactions.
  • Bernard: Allows queuing your commands in the background, using the Bernard Queuing library.
  • Command Events: Fires events for all major moments in the command life-cycle.
  • Locking: Only allows one command to be executed at a time.
  • and many more

Framework Integration

There are a number of framework integration packages for Tactician, search for Tactician on Packagist for the most up-to-date listings.

Testing

To run all unit tests, use the locally installed PHPUnit:

$ ./vendor/bin/phpunit

Security

Tactician has no previous security disclosures and due to the nature of the project is unlikely to. However, if you're concerned you've found a security sensitive issue in Tactician or one of its related projects, please email disclosures [at] rosstuck dot com.

Contributing

Please see CONTRIBUTING for details.

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.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
milesj/emojibase
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport