Individual skill
vercel-react-best-practices
React and Next.js performance optimization guidelines from Vercel Engineering. This skill should be used when writing, reviewing, or refactoring React/Next.js code to ensure optimal performance patterns. Triggers on tasks involving React components, Next.js pages, data fetching, bundle optimization, or performance improvements.
plugins/react-skills/skills/react-best-practices/SKILL.md
Source commit 4f2b4bc9a74024397b4688cbafd1ae538a83a5fb
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 4, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 1,200
- Repository last updated
- Nov 6, 2026
- License
- Apache-2.0
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- claude-code Repository topic
- github Repository topic
- commit-message Repository topic
- pull-requests Repository topic
- cursor Repository topic
- gemini-cli Repository topic
- codex Repository topic
- codex-cli Repository topic
- plugin Repository topic
- ai-agents Repository topic
- engineering Derived category
- writing Derived category
- data Derived category
- engineering-web Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 7,251 bytesrules/_sections.mddoc · 1,554 bytesrules/_template.mddoc · 631 bytesrules/advanced-effect-event-deps.mddoc · 1,802 bytesrules/advanced-event-handler-refs.mddoc · 1,483 bytesrules/advanced-init-once.mddoc · 958 bytesrules/advanced-use-latest.mddoc · 1,072 bytesrules/async-api-routes.mddoc · 1,125 bytesrules/async-cheap-condition-before-await.mddoc · 1,220 bytesrules/async-defer-await.mddoc · 2,208 bytesrules/async-dependencies.mddoc · 1,293 bytesrules/async-parallel.mddoc · 654 bytesrules/async-suspense-boundaries.mddoc · 2,510 bytesrules/bundle-analyzable-paths.mddoc · 2,382 bytesrules/bundle-barrel-imports.mddoc · 2,795 bytesrules/bundle-conditional.mddoc · 949 bytesrules/bundle-defer-third-party.mddoc · 920 bytesrules/bundle-dynamic-imports.mddoc · 791 bytesrules/bundle-preload.mddoc · 1,149 bytesrules/client-event-listeners.mddoc · 1,969 bytesrules/client-localstorage-schema.mddoc · 1,950 bytesrules/client-passive-event-listeners.mddoc · 1,644 bytesrules/client-swr-dedup.mddoc · 1,159 bytesrules/js-batch-dom-css.mddoc · 3,266 bytesrules/js-cache-function-results.mddoc · 1,949 bytesrules/js-cache-property-access.mddoc · 532 bytesrules/js-cache-storage.mddoc · 1,651 bytesrules/js-combine-iterations.mddoc · 753 bytesrules/js-early-exit.mddoc · 1,133 bytesrules/js-flatmap-filter.mddoc · 1,411 bytesrules/js-hoist-regexp.mddoc · 1,028 bytesrules/js-index-maps.mddoc · 837 bytesrules/js-length-check-first.mddoc · 1,747 bytesrules/js-min-max-loop.mddoc · 2,290 bytesrules/js-request-idle-callback.mddoc · 2,647 bytesrules/js-set-map-lookups.mddoc · 532 bytesrules/js-tosorted-immutable.mddoc · 1,782 bytesrules/rendering-activity.mddoc · 564 bytesrules/rendering-animate-svg-wrapper.mddoc · 1,185 bytesrules/rendering-conditional-render.mddoc · 980 bytesrules/rendering-content-visibility.mddoc · 815 bytesrules/rendering-hoist-jsx.mddoc · 1,039 bytesrules/rendering-hydration-no-flicker.mddoc · 2,308 bytesrules/rendering-hydration-suppress-warning.mddoc · 872 bytesrules/rendering-resource-hints.mddoc · 2,549 bytesrules/rendering-script-defer-async.mddoc · 1,868 bytesrules/rendering-svg-precision.mddoc · 588 bytesrules/rendering-usetransition-loading.mddoc · 2,074 bytesrules/rerender-defer-reads.mddoc · 973 bytesrules/rerender-dependencies.mddoc · 824 bytesrules/rerender-derived-state-no-effect.mddoc · 1,201 bytesrules/rerender-derived-state.mddoc · 728 bytesrules/rerender-functional-setstate.mddoc · 2,968 bytesrules/rerender-lazy-state-init.mddoc · 2,016 bytesrules/rerender-memo-with-default-value.mddoc · 1,173 bytesrules/rerender-memo.mddoc · 1,148 bytesrules/rerender-move-effect-to-event.mddoc · 1,268 bytesrules/rerender-no-inline-components.mddoc · 2,135 bytesrules/rerender-simple-expression-in-memo.mddoc · 1,018 bytesrules/rerender-split-combined-hooks.mddoc · 1,844 bytesrules/rerender-transitions.mddoc · 1,055 bytesrules/rerender-use-deferred-value.mddoc · 1,846 bytesrules/rerender-use-ref-transient-values.mddoc · 1,742 bytesrules/server-after-nonblocking.mddoc · 2,012 bytesrules/server-auth-actions.mddoc · 2,649 bytesrules/server-cache-lru.mddoc · 1,353 bytesrules/server-cache-react.mddoc · 2,228 bytesrules/server-dedup-props.mddoc · 2,060 bytesrules/server-hoist-static-io.mddoc · 4,423 bytesrules/server-no-shared-module-state.mddoc · 1,766 bytesrules/server-parallel-fetching.mddoc · 1,554 bytesrules/server-parallel-nested-fetching.mddoc · 992 bytesrules/server-serialization.mddoc · 996 bytes
Read excerpt
# Vercel React Best Practices
Comprehensive performance optimization guide for React and Next.js applications, maintained by Vercel. Contains 70 rules across 8 categories, prioritized by impact to guide automated refactoring and code generation.
## When to Apply
Reference these guidelines when:
- Writing new React components or Next.js pages
- Implementing data fetching (client or server-side)
- Reviewing code for performance issues
- Refactoring existing React/Next.js code
- Optimizing bundle size or load times
## Rule Categories by Priority