skills/react/SKILL.md
React Hooks, TypeScript, component patterns, and modern React best practices. Use when writing React components, hooks, context, or using Suspense/ErrorBoundary/Lazy loading.
npx skillsauth add belos-street/skill-kit reactInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Based on React 19 with TypeScript. Always use functional components with Hooks.
useMemo and useCallback judiciously for performance optimization| Topic | Description | Reference | |-------|-------------|-----------| | Hooks | useState, useEffect, useCallback, useMemo, useRef, useContext, useReducer, useId, useTransition, useDeferredValue, useSyncExternalStore | hooks | | Component Patterns | Function components, props, children, composition, render props, forwardRef, memo | components-patterns |
| Topic | Description | Reference | |-------|-------------|-----------| | Advanced Features | Suspense, Error Boundary, Lazy loading, Context, Refs, Portals | advanced-features |
import { useState, useEffect, useCallback, useMemo } from 'react'
interface Props {
title: string
count?: number
onUpdate: (value: string) => void
}
export function MyComponent({ title, count = 0, onUpdate }: Props) {
const [value, setValue] = useState<string>('')
const doubled = useMemo(() => count * 2, [count])
const handleClick = useCallback(() => {
onUpdate(value)
}, [onUpdate, value])
useEffect(() => {
console.log('Component mounted or count changed:', count)
return () => console.log('Cleanup')
}, [count])
return (
<div>
<h1>{title} - {doubled}</h1>
<button onClick={handleClick}>Click</button>
</div>
)
}
// State & Refs
import { useState, useRef, useReducer, useId } from 'react'
// Effects & Lifecycle
import { useEffect, useLayoutEffect, useInsertionEffect } from 'react'
// Performance
import { useMemo, useCallback, useTransition, useDeferredValue } from 'react'
// Context & Refs
import { useContext, useRef, forwardRef, useImperativeHandle, useSyncExternalStore } from 'react'
// Components
import { memo, useDeferredValue, Suspense, lazy, createContext, createRef } from 'react'
development
Modern, lightweight state management for React
development
Use when you have a spec or requirements for a multi-step task, before touching code
development
Vue 3 Composition API, script setup macros, reactivity system, and built-in components. Use when writing Vue SFCs, defineProps/defineEmits/defineModel, watchers, or using Transition/Teleport/Suspense/KeepAlive.
tools
Vue Router 4 patterns, navigation guards, route params, and route-component lifecycle interactions.