1---2name: li-lance-android-seraphim-framework-react-native-performance3description: React Native Performance4---56# React Native Performance78## **Priority: P0 (CRITICAL)**910## Tune FlatList for 60fps1112- **`windowSize`**: **Reduce to 5-10** for memory-heavy lists (default 21). **`initialNumToRender`**13 should cover the first viewport.14- **`getItemLayout`**: Provide for **fixed-height items**. Skips runtime measurement.15- **`removeClippedSubviews`**: Enable for **Android** (default true) to offload clipped items.16- **`maxToRenderPerBatch`**: Limit to **5-10 items per frame** to prevent JS thread blockage.17- **`keyExtractor`**: Use **stable unique IDs**, never array index.1819See [optimization guide](references/optimization-guide.md) for FlatList configuration examples with20`getItemLayout`, `windowSize`, and memoization patterns.2122## Accelerate Core Rendering2324- **The Engine**: Ensure **Hermes engine** is enabled (default in 0.7x). Verify via25 `global.HermesInternal`.26- **Animations**: Use **Native Driver (`useNativeDriver: true`)** or **Reanimated 3** for27 GPU-accelerated 60fps animations.28- **Re-renders**: Use **`React.memo`** and **`useMemo`** for expensive props. **Profile via Flipper29 ** (React DevTools) for flamegraphs.30- **Network**: Batch API calls. Use **React Query/Zustand** to prevent unnecessary screen refreshes.31- **Images**: Use **`react-native-fast-image`** for caching and priority. Avoid large PNGs; use *32 *WebP**.3334## Reduce Bundle and Startup Time3536- **Hermes**: Enable for faster startup (default in RN 0.70+).37- **Tree Shaking**: Remove unused imports.38- **ProGuard/R8**: Enable code shrinking on Android.39- **Lazy Screens**: Use `lazy` prop for stack screens (enabled by default).4041## Anti-Patterns4243- **No ScrollView for Large Lists**: Use FlatList.44- **No Inline Styles**: Use `StyleSheet.create` (optimized).45- **No console.log in Production**: Strip with babel plugin.4647## References4849See [references/optimization-guide.md](references/optimization-guide.md) for FlatList configuration,50memoization rules, and bundle analysis.5152---53> Source: [li-lance/android-seraphim-framework](https://github.com/li-lance/android-seraphim-framework) — distributed by [TomeVault](https://tomevault.io).54<!-- tomevault:4.0:skill_md:2026-06-16 -->
Run npx skillmds@latest add tomevault-io/li-lance-android-seraphim-framework-react-native-performance in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
React Native Performance It is listed under Web & Frontend on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
tomevault-io (@tomevault-io) published this skill. Their other Agent Skills are listed on their SkillMD profile.