webkurcom / package-generator
Laravel 包生成器
dev-master
2022-07-02 07:38 UTC
Requires
- php: >=7.2
- illuminate/console: ^6.0|^7.0|^8.0|^9.0
- illuminate/container: ^6.0|^7.0|^8.0|^9.0
- illuminate/filesystem: ^6.0|^7.0|^8.0|^9.0
- illuminate/support: ^6.0|^7.0|^8.0|^9.0
- illuminate/view: ^6.0|^7.0|^8.0|^9.0
This package is not auto-updated.
Last update: 2024-09-22 16:31:12 UTC
README
一个简单的包,可以快速为其他 Laravel 包生成基本结构。
安装
通过 composer 安装
composer require --dev melihovv/laravel-package-generator
如果您想自定义默认值,请发布包配置
php artisan vendor:publish --provider="Melihovv\LaravelPackageGenerator\ServiceProvider" --tag="config"
可用命令
php artisan package:new -i {vendor} {package}
创建新包。
示例: php artisan package:new Melihovv SomeAwesomePackage
此命令将
- 创建
packages/melihovv/some-awesome-package
文件夹 - 在 app composer.json 中注册包
- 从骨架文件夹复制包骨架到创建的文件夹(您可以在配置中提供自定义骨架路径)
- 运行
git init packages/melihovv/some-awesome-package
- 运行
composer update melihovv/some-awesome-package
- 运行
composer dump-autoload
使用交互式 -i
标志,您将逐个输入所需值。
php artisan package:remove {vendor} {package}
移除现有包。
示例: php artisan package:remove Melihovv SomeAwesomePackage
此命令将
- 运行
composer remove melihovv/some-awesome-package
- 移除
packages/melihovv/some-awesome-package
文件夹 - 在 app composer.json 中注销包
- 运行
composer dump-autoload
交互式模式也适用。
自定义骨架
此包将复制指定骨架路径下所有文件夹和文件到包文件夹。您可以在骨架中使用模板。所有扩展名为 tpl
的文件都将提供一些可用变量。扩展名 tpl
将被移除。
模板中可用的变量
- vendor (例如 Melihovv)
- package (例如 SomeAwesomePackage)
- vendorFolderName (例如 melihovv)
- packageFolderName (例如 some-awesome-package)
- packageHumanName (例如 Some awesome package)
- composerName (例如 melihovv/some-awesome-package)
- composerDesc (例如 A some awesome package)
- composerKeywords (例如 some,awesome,package)
- licence (例如 MIT)
- phpVersion (例如 >=7.0)
- aliasName (例如 some-awesome-package)
- configFileName (例如 some-awesome-package)
- year (例如 2017)
- name (例如 Alexander Melihov)
- email (例如 amelihovv@ya.ru)
- githubPackageUrl (例如 https://github.com/melihov/some-awesome-package)
您需要手动做的事情
- In README.md
- StyleCI 仓库标识符
- 包描述
- 用法部分
安全
如果您发现任何安全相关的问题,请通过电子邮件 amelihovv@ya.ru 联系,而不是使用问题跟踪器。