webminty / boost-webminty-guidelines
Webminty Laravel & PHP coding guidelines for Laravel Boost
Installs: 3
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Language:Blade
pkg:composer/webminty/boost-webminty-guidelines
Requires
- php: ^8.2
README
A Laravel Boost plugin that provides Webminty's Laravel & PHP coding standards as an AI skill. When installed, AI code assistants automatically follow Webminty's conventions for any Laravel or PHP work.
Requirements
- PHP 8.2+
- Laravel Boost
Installation
composer require webminty/boost-webminty-guidelines --dev
The package auto-discovers via Laravel's package discovery — no additional setup required.
What It Does
This package registers the webminty-laravel-standards skill with Laravel Boost. The skill activates automatically when an AI assistant creates, edits, reviews, refactors, or formats Laravel/PHP code, ensuring consistent adherence to Webminty's conventions.
Standards Overview
PHP
declare(strict_types=1)in every file- All classes
finalby default - Typed properties, parameters, and return types (including
void) - Constructor property promotion
- Strict comparison (
===/!==) - PSR-1, PSR-2, and PSR-12 compliance
Laravel
- Models —
$guarded = ['id'],casts()method,#[Scope]attribute for query scopes - Actions — Single-purpose
finalclasses with anexecute()method for business logic - Controllers — Thin controllers that delegate to Actions; Form Requests for validation
- DTOs — Extend
Spatie\LaravelData\Data, alwaysfinal - Livewire —
finalcomponents with#[Title]and#[Layout]attributes; Form objects for state - Routes — Kebab-case URLs, dot-notation names, RESTful conventions
- Migrations — Anonymous classes,
hash_idpattern, boolean columns prefixed withis_/has_ - Testing — Pest PHP with
test()syntax, architecture tests to enforce standards - Jobs —
final,ShouldQueue, dependencies injected inhandle()
Naming Conventions
| What | Convention | Example |
|---|---|---|
| URLs | kebab-case | /about-us |
| Route names | dot notation | tickets.show |
| Models | Singular PascalCase | User |
| Actions | Verb-first PascalCase | CreateTicket |
| Tables | Plural snake_case | mash_items |
| Columns | snake_case | is_active |
| Views | kebab-case | ticket-list.blade.php |
| Commands | app: prefix, kebab-case |
app:send-email |
Code Quality Tools
| Tool | Purpose |
|---|---|
| Laravel Pint | Code formatting |
| PHPStan + Larastan | Static analysis (level 5) |
| Rector | Automated refactoring |
| Pest PHP | Testing |
Full Reference
The complete guidelines are available: https://github.com/webmintydotcom/standards
For a Laravel Quickstart: https://github.com/webmintydotcom/laravel-quickstart
Thank you
Webminty team