20 lines
1.1 KiB
Markdown
20 lines
1.1 KiB
Markdown
# Agent Guidelines for Eloquent Power Joins
|
|
|
|
## Commands
|
|
- **Test**: `composer test` or `vendor/bin/phpunit`
|
|
- **Single test**: `vendor/bin/phpunit tests/JoinRelationshipTest.php` or `vendor/bin/phpunit --filter test_method_name`
|
|
- **Test with coverage**: `composer test-coverage`
|
|
- **Lint**: `composer lint` or `vendor/bin/php-cs-fixer fix -vvv --show-progress=dots --config=.php-cs-fixer.php`
|
|
|
|
## Code Style
|
|
- **PHP Version**: 8.2+
|
|
- **Framework**: Laravel 11.42+/12.0+ package
|
|
- **Formatting**: Uses PHP-CS-Fixer with @Symfony rules + custom overrides
|
|
- **Imports**: Use global namespace imports for classes/constants/functions, ordered alphabetically
|
|
- **Arrays**: Short syntax `[]`, trailing commas in multiline
|
|
- **Quotes**: Single quotes preferred
|
|
- **Test methods**: snake_case naming with `@test` annotation
|
|
- **Namespaces**: `Kirschbaum\PowerJoins` for src, `Kirschbaum\PowerJoins\Tests` for tests
|
|
- **Type hints**: Use strict typing, compact nullable syntax `?Type`
|
|
- **PHPDoc**: Left-aligned, no empty returns, ordered tags
|
|
- **Variables**: No yoda conditions (`$var === 'value'` not `'value' === $var`) |