Agent Skillsrelaticle/relaticle › laravel-best-practices

laravel-best-practices

GitHub

提供 Laravel PHP 后端代码的编写、审查与重构最佳实践,涵盖性能优化、安全、验证及架构规范。

.claude/skills/laravel-best-practices/SKILL.md relaticle/relaticle

Trigger Scenarios

编写 Laravel 控制器、模型或查询代码 进行 Laravel 代码审查或重构 解决 N+1 查询或缓存策略问题

Install

npx skills add relaticle/relaticle --skill laravel-best-practices -g -y
More Options

Non-standard path

npx skills add https://github.com/relaticle/relaticle/tree/main/.claude/skills/laravel-best-practices -g -y

Use without installing

npx skills use relaticle/relaticle@laravel-best-practices

指定 Agent (Claude Code)

npx skills add relaticle/relaticle --skill laravel-best-practices -a claude-code -g -y

安装 repo 全部 skill

npx skills add relaticle/relaticle --all -g -y

预览 repo 内 skill

npx skills add relaticle/relaticle --list

SKILL.md

Frontmatter
{
    "name": "laravel-best-practices",
    "license": "MIT",
    "metadata": {
        "author": "laravel"
    },
    "description": "Apply this skill whenever writing, reviewing, or refactoring Laravel PHP code. This includes creating or modifying controllers, models, migrations, form requests, policies, jobs, scheduled commands, service classes, and Eloquent queries. Triggers for N+1 and query performance issues, caching strategies, authorization and security patterns, validation, error handling, queue and job configuration, route definitions, and architectural decisions. Also use for Laravel code reviews and refactoring existing Laravel code to follow best practices. Covers any task involving Laravel backend PHP code patterns."
}

Laravel Best Practices

Best practices for Laravel, organized as an index of rule files. Each rule file teaches what to do and why. For exact API syntax, verify with search-docs.

Consistency First

Before applying any rule, check what the application already does. Laravel offers multiple valid approaches, and the best choice is the one the codebase already uses, even if another pattern would be theoretically better. Inconsistency is worse than a suboptimal pattern.

Check sibling files, related controllers, models, or tests for established patterns. If one exists, follow it. Don't introduce a second way. These rules are defaults for when no pattern exists yet, not overrides.

How to Apply

  1. Check the changed files, nearby code, project configuration, and relevant tests for established patterns. Deviate only for a correctness or security defect, and call the deviation out.
  2. Map every affected concern to the rule index below. Read each mapped rule file before editing. Skip unrelated rule files.
  3. Make the smallest coherent change. Keep the application's architecture and naming instead of introducing a second pattern for the same job.
  4. Verify version-sensitive Laravel APIs for the installed version with search-docs, or inspect the installed framework when it is unavailable.
  5. Run the narrowest relevant tests first, then the project's formatting and static-analysis checks when the change warrants them.
  6. Re-read the diff against every mapped rule before finishing.

Rule Index

Cross-cutting changes often need more than one rule file.

Concern Read
Query count, eager loading, indexes, large datasets rules/db-performance.md
Subqueries, aggregates, complex ordering and query plans rules/advanced-queries.md
Models, relationships, scopes, casts rules/eloquent.md
Authentication, authorization, input safety, secrets, uploads rules/security.md
Form Requests and validation rules rules/validation.md
Controllers, route binding, resources, middleware rules/routing.md
Schema changes, columns, foreign keys, indexes rules/migrations.md
Jobs, retries, uniqueness, batches, Horizon rules/queue-jobs.md
Cache lifetime, invalidation, locks, memoization rules/caching.md
Outbound requests, retries, timeouts, fakes rules/http-client.md
Exceptions, reporting, rendering, log context rules/error-handling.md
Events and notifications rules/events-notifications.md
Mailables and mail assertions rules/mail.md
Scheduled tasks and overlap protection rules/scheduling.md
Collections, lazy iteration, bulk operations rules/collections.md
Blade components, attributes, composers rules/blade-views.md
Environment values and application configuration rules/config.md
Pest/PHPUnit patterns, factories, fakes rules/testing.md
Naming, helpers, file boundaries, PHP style rules/style.md
Actions, services, dependencies, application structure rules/architecture.md

Decision Rules

  • Prefer framework features and existing application abstractions over new helpers or dependencies.
  • Avoid speculative abstractions. Extract code when it creates a clear domain boundary, removes meaningful duplication, or makes behavior independently testable.
  • Keep database access out of Blade views and prevent hidden N+1 queries across controllers, resources, jobs, and serialization.

Version History

  • 1f433f8 Current 2026-08-20 14:43

Same Skill Collection

.claude/skills/echo-development/SKILL.md
.claude/skills/laravel-query-builder/SKILL.md
.claude/skills/medialibrary-development/SKILL.md
.claude/skills/socialite-development/SKILL.md
.claude/skills/spatie-javascript/SKILL.md
.claude/skills/spatie-laravel-php/SKILL.md
.claude/skills/spatie-security/SKILL.md
.claude/skills/spatie-version-control/SKILL.md
.github/skills/custom-fields-development/SKILL.md
.github/skills/flowforge-development/SKILL.md
.claude/skills/agent-browser-relaticle/SKILL.md
.claude/skills/ai-sdk-development/SKILL.md
.claude/skills/business-review/SKILL.md
.claude/skills/cashier-stripe-development/SKILL.md
.claude/skills/configuring-horizon/SKILL.md
.claude/skills/fortify-development/SKILL.md
.claude/skills/infer-conventions/SKILL.md
.claude/skills/livewire-development/SKILL.md
.claude/skills/mcp-development/SKILL.md
.claude/skills/passport-development/SKILL.md
.claude/skills/pennant-development/SKILL.md
.claude/skills/pest-testing/SKILL.md
.claude/skills/screenshot-with-callout/SKILL.md
.claude/skills/tailwindcss-development/SKILL.md
.github/skills/livewire-development/SKILL.md
.github/skills/manual-testing/SKILL.md
.github/skills/tailwindcss-development/SKILL.md

Metadata

Files
0
Version
1f433f8
Hash
fbd6cf66
Indexed
2026-08-20 14:43

- 위키
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-25 05:50
浙ICP备14020137号-1 $방문자$