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

1.0.0 2026-02-17 23:30 UTC

This package is auto-updated.

Last update: 2026-02-17 23:39:53 UTC


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 final by 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 final classes with an execute() method for business logic
  • Controllers — Thin controllers that delegate to Actions; Form Requests for validation
  • DTOs — Extend Spatie\LaravelData\Data, always final
  • Livewirefinal components with #[Title] and #[Layout] attributes; Form objects for state
  • Routes — Kebab-case URLs, dot-notation names, RESTful conventions
  • Migrations — Anonymous classes, hash_id pattern, boolean columns prefixed with is_/has_
  • Testing — Pest PHP with test() syntax, architecture tests to enforce standards
  • Jobsfinal, ShouldQueue, dependencies injected in handle()

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