← Back to the catalog

Skill · Version 1.0.0

Idiomatic Laravel implementation

Uses existing Laravel conventions to give validation, authorization, business rules and HTTP handling clear responsibilities.

laravel-conventions

See how it helps

When is it useful?

Use when adding functionality that should fit the application's structure without unnecessary architectural layers.

What does it help you do?

  • Keeps controllers focused and places business rules in the project's established layer.
  • Uses dependency injection and configuration that works with cached settings.
  • Follows named routes, explicit types and consistent exception handling.

Try asking this

Implement order cancellation using our existing action pattern, policy and Form Request, including an actionable conflict response. Attempt cancellation before and after shipment. Return the existing response format, preserve shipped records and expose a conflict the caller can explain to the user.

Detailed documentation

Read the skill’s original instructions, examples and checks in their authored language.

Details…Show less

Idiomatic Laravel Development

Architecture and responsibilities

  • Keep controllers focused on HTTP orchestration: receive a validated Form Request, authorize the action, delegate non-trivial business rules to the layer the project uses (domain methods, Action classes or Services), and return a response, View, Redirect or JsonResource.
  • Separate input validation, authorization and business rules so each has one clear home and can run in HTTP, CLI and queue contexts.
  • Do not introduce repositories, service layers or interfaces with a single implementation unless the project already uses that pattern or the complexity warrants it.
  • Generate scaffolding with php artisan make:* (--no-interaction) so namespaces and stubs match the app. Never edit files in vendor/.

Container, config and environment

  • Prefer constructor dependency injection and typed contracts over app() service location in application code. Register bindings and singletons in Service Providers.
  • Call env() ONLY inside config/*.php; in application code always read config('service.key') because env() returns null when config is cached. Document new environment variables in .env.example.

Routing, errors and PHP style

  • Use named routes (route('orders.show', $order)), route model binding, and Route::resource / Route::apiResource where CRUD fits.
  • Use custom domain exceptions (report() / render() or centralized exception handling in bootstrap/app.php / Handler.php) instead of catching generic \Exception and returning ad-hoc error arrays.
  • Add explicit parameter and return types, constructor property promotion, and PHP BackedEnums (string or int) for status/type sets. Format with vendor/bin/pint --dirty when Pint is present.

Included files 2

  • LICENSE.txt
  • SKILL.md

About this skill package

laravel-conventions

laravel-conventions: Build and maintain Laravel applications with consistent Eloquent models, queues, authorization and tested upgrades.

Details…Show less

laravel-conventions

laravel-conventions: Build and maintain Laravel applications with consistent Eloquent models, queues, authorization and tested upgrades.

Includes the complete skill and its supporting files (2 files). The exact authored scope is preserved below.

Original skill description (source language)

Use when implementing or reviewing Laravel application code, controllers, routes, service container bindings, dependency injection, middleware, configuration, environment variables, error handling, Artisan commands or PHP style in a Laravel project.

Install the skill, review its source and trust settings, then enable it for the relevant project or agent.

Requirements

  • Orqestria installed on your computer.