perf
Audit component performance and identify optimization opportunities with actionable fixes
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
Performance Audit Skill
Audit Terrae components for performance issues. Identifies problems, explains their impact, and provides actionable fixes.
If $ARGUMENTS is provided, audit only that component. Otherwise, audit all components in src/registry/map/.
Performance patterns and best practices are defined in .claude/rules/react/performance.md.
Instructions
Step 1: Identify Target
If a component name is provided, locate it in src/registry/map/. Otherwise, scan all component files.
Step 2: Run the Audit
For each component, read the full file and check every rule in .claude/rules/react/performance.md:
- Resource cleanup (RAF, timers, listeners, markers, layers, sources, images, observers, canvas)
- Recursive requestAnimationFrame polling
- Untracked timers in renderers
- Mapbox objects in state vs refs
- useEffect dependency arrays (oversized, unstable references, callbacks)
- Layer and source management (setPaintProperty vs remove/re-add, existence checks)
- GeoJSON data handling (recomputation, update frequency)
- Canvas performance (pixel ratio, size, getImageData, off-screen canvas)
- DOM manipulation (innerHTML, style injection)
- Memory leaks (event listeners, growing collections, stale closures)
Also check for:
- Component re-render cost (expensive computations in render path, large JSX trees)
- Duplicate utility functions across files (DRY violations that bloat bundle size)
Step 3: Report
Structure the report as:
## Performance Audit: [Component Name]
### Score: [X/10]
### Critical Issues
Issues that cause measurable performance degradation or memory leaks.
### Warnings
Patterns that could degrade performance under load or over time.
### Best Practices
Recommendations for following optimal patterns.
### Passed Checks
Checks that the component already handles correctly.
For each issue found, include:
- What: Description of the problem
- Where: File path and line number
- Impact: What happens if not fixed (memory leak, jank, unnecessary re-renders, etc.)
- Fix: Concrete code example showing the solution
Scoring Guide
- 10/10: No issues found, follows all best practices
- 8-9/10: Minor warnings only, no performance impact
- 6-7/10: Some warnings that could cause issues under load
- 4-5/10: Has performance issues that affect user experience
- 2-3/10: Critical issues causing memory leaks or severe jank
- 0-1/10: Fundamentally broken performance patterns
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-03-11
- 索引更新时间
- 2026-03-11
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!