rockero-cz / laravel-starter-kit
加速您的Laravel项目启动。
Requires
- php: ^8.1|^8.2|^8.3
- illuminate/contracts: ^10.0|^11.0
- larastan/larastan: ^2.0
- pestphp/pest: ^2.6
- pestphp/pest-plugin-laravel: ^2.0
- spatie/laravel-package-tools: ^1.13.0
- tightenco/duster: 2.0.0
Requires (Dev)
- laravel/pint: ^1.16
- nunomaduro/collision: ^7.5|^8.1
- orchestra/testbench: ^8.0|^9.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- phpunit/phpunit: ^10.1|^11.0
- spatie/laravel-ray: ^1.26
README
Laravel Starter Kit
安装
我们的入门套件需要Laravel版本10或更高。
使用Composer安装此包
composer require rockero-cz/laravel-starter-kit --with-all-dependencies
您可以通过发布配置文件来自定义安装命令:
php artisan vendor:publish --tag="starter-kit-config"
然后运行安装命令
php artisan starter-kit:install
功能
以下是rockero-cz/laravel-starter-kit
所有功能的简单列表,包含示例。它们旨在加快项目的启动速度。它可以在任何类型的Laravel
应用程序上安装。
Pest配置
入门套件包括通过发布预配置的TestCase
、示例测试和.env.testing
文件来初始化Pest
。
此外,它还生成一个ArchitectureTest.php
文件,以保持代码库整洁和可持续。
test('globals') ->expect(['dd', 'dump', 'ray', 'env']) ->not->toBeUsed(); test('controllers') ->expect('App\Http\Controllers') ->not->toUse('Illuminate\Http\Request'); test('value objects') ->expect('App\ValueObjects') ->toUseNothing();
PHPStan配置
除了测试外,它还使用具有自定义配置的PHPStan
工具准备静态分析,配置级别为7。
includes: - ./vendor/larastan/larastan/extension.neon parameters: level: 7 checkMissingIterableValueType: false checkGenericClassInNonGenericObjectType: false paths: - app/
Duster配置
对于代码检查和格式化,我们使用Tighten的Duster
。Duster
将多个工具(Pint
、TLint
、PHP_CodeSniffer
和PHP CS Fixer
)统一在一个强大的命令中。它还有助于我们遵循一些编码标准。
我们还添加了PHPStan
到配置中,以便在单个命令中统一所有内容。
{ "scripts": { "lint": { "phpstan": ["./vendor/bin/phpstan", "analyse"] }, "fix": { "phpstan": ["./vendor/bin/phpstan", "analyse"] } } }
GitHub Workflows CI
在安装入门套件期间,您将被提示添加GitHub Workflows的CI。
如果您选择继续,将自动生成包含测试和Duster
的ci.yml
文件。
为了允许github action从duster和prettier提交更改,您必须设置权限。
在github.com -> (您的项目) -> 设置 -> 动作 -> 通用 -> 工作流权限
中设置读取和写入权限
Prettier
在安装入门套件期间,您将被提示添加Prettier到CI和项目。
安装准备.prettierrc
,其中包含配置和命令php artisan prettier
,用于在本地环境中修复您的代码。
您可以使用.prettierignore
文件来忽略任何文件或目录。这可以防止Prettier格式化您不希望格式化的文件,或者防止Prettier格式化非代码文件。
占位符
发布Laravel的默认占位符,以便我们在项目中拥有统一的源代码。
它们也略有修改,以提高编程效率。
命令
由于我们遵循Action
编程概念,入门套件提供了两个命令,可以使您更高效。
Make action command: php artisan make:action VerifyUserAction
class VerifyUserAction { /** * Run the action. */ public function run(): void { // } }
Make class command: php artisan make:class ShoppingCart
class ShoppingCart { // }
这两个命令都有一个
--test
选项,可以创建相应的测试。
测试
composer test
变更日志
有关最近更改的更多信息,请参阅CHANGELOG。
贡献
有关详细信息,请参阅CONTRIBUTING。
安全漏洞
请查阅我们的安全策略,了解如何报告安全漏洞。
致谢
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。