react-best-practices

65
31
Source

Client-side React performance optimization patterns.

Install

mkdir -p .claude/skills/react-best-practices && curl -L -o skill.zip "https://mcp.directory/api/skills/download/1543" && unzip -o skill.zip -d .claude/skills/react-best-practices && rm skill.zip

Installs to .claude/skills/react-best-practices

About this skill

React Best Practices

Client-side React optimization patterns for Cloud UI. 29 rules organized by category and impact.

Activation Conditions

  • Performance optimization tasks
  • Component re-render issues
  • Bundle size concerns
  • useEffect/useMemo patterns

Rules by Category

Bundle Optimization (CRITICAL)

RuleKey Point
bundle-barrel-importsImport from source files, not barrel index.ts
bundle-code-splittingReact.lazy + Suspense for heavy components, conditional loads, deferred 3rd-party
bundle-preloadPreload critical resources

Re-render Prevention (HIGH)

RuleKey Point
rerender-memoMemoize expensive computations
rerender-dependenciesMinimize hook dependency arrays
rerender-derived-stateCompute during render, not in effects
rerender-functional-setstatesetState(prev => ...) to avoid stale closures
rerender-lazy-state-inituseState(() => expensive()) not useState(expensive())
rerender-simple-expression-in-memoDon't memoize trivial expressions
rerender-transitionsuseTransition for non-urgent updates
rerender-defer-readsRead URL params / storage inside callbacks, not at render

Rendering (MEDIUM)

RuleKey Point
rendering-conditional-renderShort-circuit with && / ternary, avoid render in effects
rendering-hoist-jsxMove static JSX outside components
rendering-content-visibilityCSS content-visibility: auto for off-screen
rendering-activityReact <Activity> for hidden UI
rendering-animate-svg-wrapperWrap animated SVGs to isolate re-renders
rendering-svg-precisionLimit SVG coordinate precision

Async (MEDIUM)

RuleKey Point
async-suspense-boundariesGranular <Suspense> boundaries
async-defer-awaitDon't await non-blocking work
async-dependenciesLoad deps in parallel, not sequentially

JavaScript (MEDIUM)

RuleKey Point
js-caching-patternsModule-level Map caches for repeated calls + storage reads
js-batch-dom-cssBatch DOM reads/writes to avoid layout thrashing
js-index-mapsPre-index arrays into Maps for O(1) lookups
js-length-check-firstCheck .length before expensive operations
js-tosorted-immutableUse .toSorted() / .toReversed() for immutable transforms

RegExp hoisting is enforced by Biome (useTopLevelRegex).

Browser (MEDIUM)

RuleKey Point
client-event-listenersClean up event listeners in useEffect return
client-passive-event-listeners{ passive: true } for scroll/touch handlers

Advanced (LOW)

RuleKey Point
advanced-event-handler-refsStable callback refs to avoid child re-renders
advanced-use-latestuseLatest pattern for always-current values in callbacks

bloblang-authoring

redpanda-data

This skill should be used when users need to create or debug Bloblang transformation scripts. Trigger when users ask about transforming data, mapping fields, parsing JSON/CSV/XML, converting timestamps, filtering arrays, or mention "bloblang", "blobl", "mapping processor", or describe any data transformation need like "convert this to that" or "transform my JSON".

103

code-standards

redpanda-data

TypeScript, React, and JavaScript best practices enforced by Ultracite/Biome.

132

ui-development

redpanda-data

Build UI with Redpanda Registry components, Tailwind v4, and accessibility best practices.

81

e2e-tester

redpanda-data

Write and run Playwright E2E tests for Redpanda Console using testcontainers. Analyzes test failures, adds missing testids, and improves test stability. Use when user requests E2E tests, Playwright tests, integration tests, test failures, missing testids, or mentions 'test workflow', 'browser testing', 'end-to-end', or 'testcontainers'.

141

form-refactorer

redpanda-data

Refactor legacy forms to use modern Redpanda UI Registry Field components with react-hook-form and Zod validation. Use when user requests: (1) Form refactoring or modernization, (2) Converting Chakra UI or @redpanda-data/ui forms, (3) Updating forms to use Field components, (4) Migrating from legacy form patterns, (5) Implementing forms with react-hook-form and Zod validation.

101

state-management

redpanda-data

Manage client and server state with Zustand stores and React Query patterns.

111

You might also like

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

2,48415,706

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

3,9354,148

youtube-transcribe-skill

feiskyer

Extract subtitles/transcripts from a YouTube video URL and save as a local file. Use when you need to extract subtitles from a YouTube video.

4183,004

pdf-to-markdown

aliceisjustplaying

Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.

5,0142,406

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

2,3251,749

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

2,6051,593