Backend Development
Laravel
Objective
Sep 30, 2025
How do you implement Package development in Laravel?
Detailed Explanation
Laravel package development allows creating reusable components:
**Package Structure:**
my-package/
├── src/
│ ├── MyPackageServiceProvider.php
│ ├── Facades/
│ └── Commands/
├── config/
├── resources/
├── tests/
└── composer.json
**Service Provider:**
class MyPackageServiceProvider extends ServiceProvider {
public function register() {
$this->app->singleton("mypackage", function () {
return new MyPackage();
});
}
public function boot() {
$this->publishes([
__DIR__."/../config/mypackage.php" => config_path("mypackage.php"),
], "config");
$this->loadRoutesFrom(__DIR__."/../routes/web.php");
$this->loadViewsFrom(__DIR__."/../resources/views", "mypackage");
$this->loadMigrationsFrom(__DIR__."/../database/migrations");
}
}
**Facade:**
class MyPackageFacade extends Facade {
protected static function getFacadeAccessor() {
return "mypackage";
}
}
**Composer.json:**
{
"name": "vendor/my-package",
"autoload": {
"psr-4": {
"Vendor\MyPackage\": "src/"
}
},
"extra": {
"laravel": {
"providers": [
"Vendor\MyPackage\MyPackageServiceProvider"
],
"aliases": {
"MyPackage": "Vendor\MyPackage\Facades\MyPackageFacade"
}
}
}
}Discussion (0)
No comments yet. Be the first to share your thoughts!
Share Your Thoughts