evo-laravel-service-facades maintained by evo-mark
Description
Support package for easily using the service/facade pattern
Author
Last update
2026/05/05 01:37
(dev-main)
License
Downloads
416
Evo Laravel Service Facades
Create services with a backing facade in multiple pre-defined locations, then automatically load them into your application.
Generate PHP Doc annotations for your facades to enable type-hinting in your IDE.
Installation
composer require evo-mark/evo-laravel-service-facades
Usage
php artisan make:service
php artisan facades:annotate
To keep your annotations up-to-date, you should add the following to your application's composer.json file:
"post-autoload-dump": [
"@php artisan facades:annotate --no-interaction"
],
By default, your app's Service and Facades folders will be used as the default "location". You can change this by publishing the package's config file.
php artisan v:p --provider="EvoMark\EvoLaravelServiceFacades\Provider"
If you'd prefer, you can instead add to the available locations during application boot by calling:
use EvoMark\EvoLaravelServiceFacades\Facades\ServiceFacades;
public function boot()
{
ServiceFacades::registerLocation(
name: "Custom Location",
serviceNamespace: "App\\CustomServices",
facadeNamespace: "App\\CustomFacades",
servicePath: app_path('CustomServices'),
facadePath: app_path('CustomFacades'),
exclude = ["SomeExcludedService"]
);
}