lsnepomuceno/laravel-package-maker

获取包骨架和所有其他从laravel基础生成的`make`命令,用于包的开发。

v5.0.0 2022-03-03 16:23 UTC

README

Naoray/laravel-package-maker 分支而来

Software License Total Downloads

所有在您的日常Laravel应用开发工作流程中使用的`make`命令,但用于包!此包仅为此目的创建,以使包开发尽可能快和简单。创建一个新的包只需一个命令(`make:package`),您将获得以下文件结构

.
└── package
    ├── .codecov.yml
    ├── composer.json
    ├── CONTRIBUTING.md
    ├── .gitignore
    ├── LICENSE.md
    ├── phpunit.xml
    ├── readme.md
    ├── src
    │   └── PackageServiceProvider.php
    ├── .styleci.yml
    ├── tests
    │   └── TestCase.php
    └── .travis.yml

安装

composer require lsnepomuceno/laravel-package-maker --dev

用法

创建包

php artisan make:package

make:package

创建nova工具

php artisan make:nova

Spatie的nova-skeleton-tool启发,此命令克隆存储库,将所有字符串替换为您的,并将其添加到您的项目中。

make:nova

添加包

php artisan package:add

如果您已经创建了一个包或您想添加一个目前仅在本地可用的修改后的包版本,您可以使用以下命令将您的包添加到项目中。它只是将您的包添加到项目的composer仓库,并要求本地版本。

此命令由`make:package`自动运行,因此您在创建包后无需执行它!

保存包凭据

php artisan package:save
				{namespace : Root namespace of the package (Vendor\Package_name)}
				{path : Relative path to the package's directory}

每个package:*命令都需要知道包的命名空间以及包存储位置的相对路径。因此,每个package:*命令都默认包含这两个选项。为了避免每次执行package:*命令时都输入这两个选项,此命令将您的包凭据保存到缓存中。

删除包凭据

php artisan package:delete

此命令将清除缓存中存储的所有凭据。

克隆软件包

php artisan package:clone
                {src : Source path of the package to clone}
                {target : Path where it should be cloned in}

克隆命令将指定的仓库或目录克隆到指定的目标位置。

替换内容

php artisan package:replace 
                {path : The path to a file or directory}
                {--O|old=* : Old strings which will be replaced}
                {--N|new=* : New strings which will be used as replacement}'

替换命令接受一个文件或目录的路径以及不定数量的'旧'选项,这些选项将被'新'选项所替换。

制作命令

所有这些命令都具有在正常Laravel应用程序中熟悉的所有参数和选项!要执行这些命令中的任何一个,只需添加前缀package:

基础

  • channel
  • console
  • event
  • exception
  • job
  • listener
  • mail
  • model
  • notification
  • observer
  • policy
  • provider
  • request
  • resource
  • rule
  • test

数据库

  • factory
  • migration
  • seeder

路由

  • controller
  • middleware

标准PHP

以下所有路由只接受一个name参数。

  • contract
  • interface(与contract相同)
  • trait

用于创建初始软件包存根的命令

  • package:basetest {provider : 软件包的提供者名称} - 在tests文件夹中创建TestCase
  • package:codecov - 创建.codecov.yml文件
  • package:composer {--author : 软件包的作者。} {--email : 作者的电子邮件。} - 创建composer.json
  • package:contribution - 创建CONTRIBUTING.md
  • package:gitignore - 创建.gitignore文件
  • package:license {--copyright : 放置在许可文件中的公司或供应商名称} - 创建LICENSE.md文件
  • package:phpunit - 创建phpunit.xml
  • package:readme {--author : 软件包的作者。} {--email : 作者的电子邮件。} - 创建readme.md
  • package:styleci - 创建.styleci.yml
  • package:travis - 创建.travis.yml

示例用法

使用几个make命令 package:*

所有您从标准 make 命令中熟悉的参数和选项都可用。使用所有选项创建一个模型。 package:model --all

测试

使用以下命令运行测试:

vendor/bin/phpunit

变更日志

请参阅变更日志获取更多最近更改的信息。

贡献

请参阅贡献指南获取详细信息。

鸣谢

安全性

如果您发现任何安全相关的问题,请通过电子邮件krishan.koenig@googlemail.com联系,而不是使用问题跟踪器。

许可证

MIT许可证(MIT)。请参阅许可文件获取更多信息。