vercel-react-best-practices

Applies Vercel performance optimization rules when writing or refactoring React and Next.js code.

Updated Sep 17, 2026
One-click install
npx skills add https://github.com/juanjaragavi/utilities-manager --skill vercel-react-best-practices-juanjaragavi
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: vercel-react-best-practices
Source: https://github.com/juanjaragavi/utilities-manager/tree/main/.agents/skills/vercel-react-best-practices
Command: npx skills add https://github.com/juanjaragavi/utilities-manager --skill vercel-react-best-practices-juanjaragavi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? React and Next.js codebases often ship with hidden performance problems: sequential async waterfalls, bloated bundles from barrel imports, unnecessary re-renders, and unoptimized server-side data fetching. This Skill gives an AI agent a structured, prioritized rulebook of 70+ Vercel Engineering guidelines so generated or refactored code follows proven performance patterns from the start. ## Core Features & Use Cases - Prioritized Rule Catalog: 70+ rules across 8 categories ranked by impact, from CRITICAL (eliminating waterfalls, bundle size) to LOW (advanced hook patterns), each with incorrect vs. correct code examples. - On-Demand Rule Files: Individual rule files under rules/ (e.g., async-parallel.md, bundle-barrel-imports.md) let the agent load only the guidance relevant to the current task. - Use Case: While building a Next.js dashboard, the agent applies Promise.all() parallelization in API routes, replaces barrel imports from lucide-react with optimized imports, wraps slow sections in Suspense boundaries, and uses React.cache() for per-request deduplication. ## Quick Start Review my Next.js page component and refactor it using the Vercel React best practices rules to eliminate data-fetching waterfalls and reduce bundle size.

Frequently Asked Questions about vercel-react-best-practices

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

FAQPage Schema
How do I eliminate data fetching waterfalls in Next.js?▼

Start independent async operations immediately and await them together with Promise.all(), or use better-all for partial dependency chains. In components, move data fetching into Suspense-wrapped children so the layout renders while data streams in.

How to reduce bundle size from barrel file imports?▼

Avoid importing from barrel files like lucide-react or @mui/material entry points, which can load thousands of modules. In Next.js 13.5+, use optimizePackageImports; otherwise import directly from subpaths like @mui/material/Button.

Does this guide cover React Server Components performance?▼

Yes, it includes server-side rules for RSC: minimizing serialization at client boundaries, avoiding duplicate serialization of props, per-request deduplication with React.cache(), and avoiding shared module state for request data.

When should I use useMemo and useCallback in React?▼

Only memoize expensive computations or components with stable-prop requirements; simple primitive expressions should not be wrapped in useMemo. Extract expensive work into memoized child components and use functional setState for stable callbacks.

Why is my Next.js API route slow?▼

Sequential awaits create waterfall chains where each request adds full network latency. Start independent promises immediately, await them together, and defer awaits into the branches that actually need the data.

When should I not use Suspense boundaries for data fetching?▼

Avoid Suspense when data drives layout decisions, when content is SEO-critical above the fold, or when queries are fast enough that the loading-to-content layout shift hurts UX more than the wait.