react-render-performance-review

Review React render costs, context invalidation, keys, and memoization for performance issues.

2|Updated May 6, 2026
One-click install
npx skills add https://github.com/bpcakes/jig-skills --skill react-render-performance-review-bpcakes
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: react-render-performance-review
Source: https://github.com/bpcakes/jig-skills/tree/main/plugins/jig-typescript/skills/react-render-performance-review
Command: npx skills add https://github.com/bpcakes/jig-skills --skill react-render-performance-review-bpcakes

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? React performance reviews often devolve into adding useMemo, useCallback, and React.memo everywhere without evidence. This Skill provides a structured review workflow that identifies real render costs, context invalidation, unstable keys, and unnecessary client JavaScript, while explicitly avoiding memoization recommendations that lack measured justification. ## Core Features & Use Cases - Evidence-Based Review Workflow: Six-step process from identifying the slow path through measurement, bottleneck classification, structural fixes, and before/after validation. - Decision Gates for Memoization: Explicit criteria for when useMemo, useCallback, React.memo, virtualization, and context splitting are justified, including React Compiler considerations. - Severity-Ranked Findings: High/Medium/Low severity rubric with a required output format covering verdict, evidence, findings, do-not-change items, and suggested patches. - Use Case: When reviewing a Next.js pull request where a page feels sluggish, use this Skill to trace whether the cause is a broad 'use client' boundary, a context provider invalidating a large subtree, or an unvirtualized list, and report findings with file locations and validation methods. ## Quick Start Ask the agent to review your React components or current working changes for render performance issues and report findings with severity and evidence without editing code.

Frequently Asked Questions about react-render-performance-review

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I review React components for render performance issues?

Start by identifying the slow interaction, then gather evidence with React DevTools Profiler or production builds. Classify the bottleneck as expensive render work, context invalidation, identity churn, or list size, and prefer structural fixes like moving state or splitting context before adding memoization.

When should I use useMemo and useCallback in React?

Add useMemo only when a pure calculation is measured or obviously costly, runs on update paths, and has stable dependencies. Add useCallback only when function identity is consumed by a memoized child, hook dependency, context value, or selector.

Does React Compiler replace manual memoization?

When React Compiler is enabled, many local values and functions are automatically memoized, so manual useMemo, useCallback, and React.memo become escape hatches. Reserve them for measured cases, context values, hook dependencies, and code the compiler cannot safely optimize.

Why do React context providers cause unnecessary re-renders?

Provider values recreated every render change identity and invalidate all consumers, and React.memo cannot block context-driven re-renders. Fix by splitting context by update frequency, pushing providers closer to consumers, or memoizing the value after shaping the boundary correctly.

What key mistakes cause React components to remount?

Using index, Math.random(), Date.now(), or render-generated keys makes React treat items as different component identities, resetting state and recreating DOM. Use stable IDs from the data model, created at data creation time rather than during render.