fahadmayow / exert
A lightweight Laravel package for implementing group-based action architecture.
Requires
- php: ^8.2
- laravel/framework: ^12.51 || ^13.0
Requires (Dev)
- orchestra/testbench: ^10.0 || ^11.0
- phpunit/phpunit: ^11.5 || ^12.5
Suggests
None
Provides
None
Conflicts
None
Replaces
None
README
An opinionated, HTTP-oriented Laravel package for grouping related actions behind one endpoint.
POST /api/orders?action=cancel
→ OrderController
→ CancelOrder
→ HTTP response
Each operation gets its own action class. A controller explicitly maps the names clients may call. Laravel handles requests, dependency injection, middleware, validation, and responses. Your application supplies access control and business rules.
Documentation
Read the complete guide on the Exert documentation site:
- Meet Exert — the idea, the tradeoffs, and when it fits.
- Installation — requirements and Composer installation.
- Your first endpoint — a complete example with no database.
- An order workflow — validation, authorization, and a state change.
- Precognition — action-based input prediction.
- Configuration reference and troubleshooting.
Installation
The package requires Laravel 12.51 or later, including Laravel 13. In your Laravel application, run:
composer require fahadmayow/exert
See the installation guide for provider registration and optional configuration publishing.
Package development
composer install
composer test
See Package development for more checks and documentation commands.
License
MIT.