- What is bekwoh/laravel-action and what problem does it solve?
- bekwoh/laravel-action is a lightweight Laravel package that brings an action pattern to your application. It lets you encapsulate business logic in reusable, single-purpose action classes so controllers stay thin and workflows are easier to test and compose. It is intended for teams that want a consistent action convention without adopting a heavier service-layer framework.
- How do I install bekwoh/laravel-action in a Laravel app?
- Install it with Composer using composer require bekwoh/laravel-action. Laravel package discovery should register the service provider if one is included. The available context does not indicate migrations or complex configuration, so integration is typically limited to creating action classes and calling them from controllers, jobs, or other services.
- Which Laravel versions does bekwoh/laravel-action support?
- Release 2.3.0 adds Laravel 13 support, and CI is described as running Laravel 12 with PHP 8.4 and 8.3. The package does not clearly document whether Laravel 10 and 11 remain supported. Verify the Composer constraints and CI matrix before relying on older Laravel versions.
- Which PHP versions are supported by bekwoh/laravel-action?
- PHPUnit 12 and Pest 4 compatibility in release 2.3.0 imply a PHP 8.3+ baseline for the test tooling. The runtime PHP constraint should be checked in composer.json before installing. Teams on PHP 8.2 or older may need to stay on a prior release line or confirm compatibility first.
- How does bekwoh/laravel-action differ from lorisleiva/laravel-actions?
- bekwoh/laravel-action is described as a lightweight action pattern package for encapsulating single-purpose business logic. lorisleiva/laravel-actions is a more widely known package with a broader feature set. This package appears intentionally minimal, so compare the exact API and features you need rather than assuming parity.
- Do I need to configure anything or run migrations after installing bekwoh/laravel-action?
- No database migrations or complex configuration are indicated in the available context. You can likely start by creating an action class and wiring it into a controller or job. Check the README for any optional configuration publishing or generator commands before assuming zero setup.
- Does bekwoh/laravel-action support queues, events, transactions, validation, or authorization?
- The available context describes a small, focused package without detailing built-in queue, event, transaction, validation, or authorization helpers. Treat it as a way to structure plain PHP action classes with Laravel dependency injection. Implement those concerns explicitly in your actions or surrounding code, and confirm the exact API in the README before designing around it.
- How should I test action classes created with bekwoh/laravel-action?
- Because actions are plain PHP classes, you can instantiate them directly and assert their outputs, or resolve them from the Laravel container when they use dependency injection. Use your normal PHPUnit or Pest setup; release 2.3.0 adds PHPUnit 12 and Pest 4 support for teams on PHP 8.3+. Start with one non-critical action and test it before wider adoption.
- Is bekwoh/laravel-action production-ready and how risky is the dependency?
- Runtime risk appears low because the package is small and focused, but it is a single-maintainer dependency with undocumented test coverage and potential name confusion with a more popular package. Verify release cadence, license, security disclosure process, and CI coverage for your Laravel and PHP versions. Pilot it in one module rather than adopting it application-wide on day one.
- How do I upgrade from 2.2.0 to 2.3.0 of bekwoh/laravel-action?
- Release 2.3.0 indicates no breaking changes, so upgrading from 2.2.0 is likely a Composer update followed by your full test suite and static analysis. The release adds Laravel 13 support, PHPUnit 12, and Pest 4, which may raise your test-tooling baseline to PHP 8.3+. Verify that Laravel 13 is actually exercised in CI before tying it to a Laravel 13 upgrade.