onramplab / composer-package-template
一个Composer模板
v1.0.1
2023-01-12 08:35 UTC
Requires
- php: >=7.4
Requires (Dev)
- mockery/mockery: ^1.5
- nunomaduro/phpinsights: ^2.6
- onramplab/onr-phpcs-laravel: ^1.2
- phpmd/phpmd: ^2.13
- phpstan/phpstan: ^1.9
- phpunit/phpunit: ^9.5
- rector/rector: ^0.15.3
- sempro/phpunit-pretty-print: ^1.4
- spatie/phpunit-watcher: ^1.23
- squizlabs/php_codesniffer: *
README
如果你正在尝试创建一个新的PHP Composer包,无论是提交到packagist.org还是仅存在于你的Github账户中,这个文件模板包一定会帮助你使这个过程变得更简单、更快。
需求
- PHP >= 7.4;
- composer.
特性
- PSR-4自动加载兼容结构;
- PSR-2代码风格兼容;
- 使用PHPUnit 6进行单元测试;
- 全面的指南和教程;
- 易于与任何框架或纯PHP文件一起使用;
- 包含有用的工具以改进代码。
安装
composer create-project onramplab/composer-package-template yourproject
这将为您创建一个基本的项目结构
- /build默认用于存储代码覆盖率输出;
- /src是您的代码所在之处,每个类都需要在这个文件夹中的单独文件中;
- /tests每个在src文件夹中编写的类在“包含”到其他地方之前都需要进行测试。所以基本上我们在那里有测试类来测试其他类;
- .gitignore有一些我们不希望在Git中发布的文件,所以我们只需将它们添加到这个文件中,让它们“被Git忽略”;
- CHANGELOG.md跟踪包更新;
- CONTRIBUTION.md贡献者公约代码行为;
- LICENSE规定其他程序员可以使用此库的自由程度;
- README.md这是库的迷你文档,如果发布在GitHub和Packagist上,这通常是您的仓库的“主页”;
- composer.json存储有关您的库的信息,如包名、作者和依赖项;
- phpunit.xml这是PHPUnit的配置文件,以便测试类可以测试您编写的类;
- .travis.yml为Travis CI提供基本配置,并配置了代码气候测试覆盖率报告。
请参阅原始文章获取更多信息。
有用工具
运行测试
php vendor/bin/phpunit
或
composer test
代码检查工具
php vendor/bin/phpcs --standard=PSR2 src/
或
composer psr2check
代码自动修复工具
composer psr2autofix
composer insights:fix
rector:fix
构建文档
php vendor/bin/phpdoc -d "src" -t "docs"
或
composer docs
变更日志
为了跟踪,请参阅CHANGELOG.md。
贡献
- 将它分叉。
- 创建您的功能分支(git checkout -b my-new-feature)。
- 进行更改。
- 运行测试,如有必要添加您的代码的新测试(phpunit)。
- 提交更改(git commit -am '添加了一些功能')。
- 推送到分支(git push origin my-new-feature)。
- 创建新的拉取请求。
也请参阅CONTRIBUTION.md。
许可协议
请参阅LICENSE。