Context
Spatie's PHP/Laravel guidelines (now installed as the spatie-laravel-php skill via spatie/guidelines-skills) require camelCase for methods and variables, while config keys and database columns stay snake_case. The codebase currently uses snake_case local variables throughout. This issue tracks standardizing on camelCase so it isn't forgotten. Prompted during the web ESI / Laravel 13 work (seatplus/web#1489).
Non-compliance by package
Distinct snake_case local variables in src (rough scale, not exact work items):
| Package |
snake_case vars |
files |
Repo |
| esi-schema |
~354 |
167 |
seatplus/esi-schema |
| eveapi |
~94 |
103 |
seatplus/eveapi |
| web |
~102 |
78 |
seatplus/web |
| auth |
~71 |
44 |
seatplus/auth |
| esi-client |
~31 |
6 |
seatplus/esi-client |
Approach (per-package PRs — each repo has its own CI / 100% type-coverage / PHPStan)
Rules / caveats
- Rename only true local variables (and non-mapped private/protected methods) to camelCase.
- Keep snake_case for: config keys, DB column names, Eloquent attribute-backed properties,
$fillable/$casts entries, and anything that maps to a storage column or an ESI API payload field.
- Relation method names stay per each package's existing convention — auth uses camelCase (
roleMemberships, mainCharacter), eveapi CharacterInfo uses snake_case (wallet_journals, assets). Do not "fix" these.
- Do each package wholesale, not piecemeal (consistency-first), and validate with that package's full test suite + type-coverage + PHPStan before merging.
Reference: Spatie guidelines — https://spatie.be/guidelines/laravel
Context
Spatie's PHP/Laravel guidelines (now installed as the
spatie-laravel-phpskill viaspatie/guidelines-skills) require camelCase for methods and variables, while config keys and database columns stay snake_case. The codebase currently uses snake_case local variables throughout. This issue tracks standardizing on camelCase so it isn't forgotten. Prompted during the web ESI / Laravel 13 work (seatplus/web#1489).Non-compliance by package
Distinct snake_case local variables in
src(rough scale, not exact work items):Approach (per-package PRs — each repo has its own CI / 100% type-coverage / PHPStan)
Rules / caveats
$fillable/$castsentries, and anything that maps to a storage column or an ESI API payload field.roleMemberships,mainCharacter), eveapiCharacterInfouses snake_case (wallet_journals,assets). Do not "fix" these.Reference: Spatie guidelines — https://spatie.be/guidelines/laravel