ワンクリックで
laravel
Laravel 13 best practices: architecture, Eloquent, security, queues, testing, tooling. PHP 8.3+. Use when writing or reviewing Laravel applications.
メニュー
Laravel 13 best practices: architecture, Eloquent, security, queues, testing, tooling. PHP 8.3+. Use when writing or reviewing Laravel applications.
Docker best practices: image security, build efficiency, runtime hardening, Compose, local tooling (Colima, OrbStack). Use when writing or reviewing Dockerfiles and Compose files.
AWS best practices: IAM, secrets, networking, security, compute, IaC, ops. Use when building, reviewing, or modifying AWS resources.
GCP best practices: IAM, secrets, networking, security, compute, IaC, ops. Use when building, reviewing, or modifying GCP resources.
Idiomatic Go 1.25 practices: errors, interfaces, concurrency, generics, testing, security, tooling. Use when writing or reviewing Go code.
Modern Java practices: design, errors, concurrency, security, testing, tooling. Targets Java 21 LTS baseline; Java 25 LTS features called out explicitly. Use when writing or reviewing Java code.
Behavioral guidelines to reduce common LLM coding mistakes. Use when writing, reviewing, or refactoring code to avoid overcomplication, make surgical changes, surface assumptions, and define verifiable success criteria.
| name | laravel |
| description | Laravel 13 best practices: architecture, Eloquent, security, queues, testing, tooling. PHP 8.3+. Use when writing or reviewing Laravel applications. |
AppServiceProvider: Model::shouldBeStrict() in non-production, Model::preventLazyLoading() in all envs#[Fillable], #[Guarded], #[Hidden] replace $fillable, $guarded, $hidden properties#[Middleware], #[Authorize] replace $this->middleware() in constructor#[Tries], #[Backoff], #[Timeout], #[FailOnTimeout] replace class propertieswith(). Enable Model::preventLazyLoading() to catch N+1 in devfirstOrFail() / findOrFail() — never manually null-check query results#[Fillable] or explicit $fillable. Never $guarded = [] in productionDB::transaction(fn() => ...) for all multi-step writesHasUuids / HasUlids traitssometimes and nullable intentionally.env committed to repoCrypt facadelogin, register, password reset) with throttle middlewareDB::statement() with user input. Use query builder or Eloquent#[Tries], #[Backoff], #[Timeout] attributes (L13+) or equivalent properties on every jobfailed() method on every job for cleanup and alertinghigh, default, low, emails. Never one default queue for everythingbalance, maxProcesses, and timeout per queue in horizon.phpHorizonServiceProvider gate — never expose in production without authapi/v1/, api/v2/. Never break existing API consumersJsonResource) for all responses. Never return raw Eloquent modelsCache::touch() (L13+) to extend TTL on accessed entries without re-fetchingRefreshDatabaseDB::insert in testsHttp::fake(), Mail::fake(), Queue::fake(), Event::fake(), Storage::fake() — no real services in testsPest::arch() for architecture tests: enforce namespace rules, no business logic in controllers@pest datasets for parameterised caseschunk() or cursor() for large dataset processing. Never ->get() on unbounded queriesCache::touch() (L13+) for sliding TTL on hot cache entriesphp artisan optimize in production: caches config, routes, views, eventsFeature::active('feature-name')./vendor/bin/pint). Enforce in CI — no style debatesphp artisan about + php artisan model:show for runtime introspection in debuggingphp artisan db:monitor and slow query logging in production