noartem

laravel-performance-eager-loading

by @noartem in Tools
1
0
# Install this skill:
npx skills add noartem/skills --skill "laravel-performance-eager-loading"

Install specific skill from multi-skill repository

# Description

Prevent N+1 queries by eager loading; enable lazy-loading protection in non-production; choose selective fields

# SKILL.md


name: laravel-performance-eager-loading
description: Prevent N+1 queries by eager loading; enable lazy-loading protection in non-production; choose selective fields


Eager Loading and N+1 Prevention

Load Relations Explicitly

Post::with(['author', 'comments'])->paginate();
  • Use load()/loadMissing() after fetching models when needed
  • Select only required columns for both base query and relations

Guard Against Lazy Loading in Dev/Test

Add to a service provider (non-production):

Model::preventLazyLoading(! app()->isProduction());

Verify

  • Use a query logger or debugbar to confirm relation queries are minimized
  • Add tests that assert counts or avoid unexpected query spikes

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.