npx skills add smithery/mindrally --skill expo-react-native-javascript-best-practices
mindrally/skills
expo-react-native-javascript-best-practices
Expo React Native JavaScript best practices for clean code, functional components, performance optimization, and Expo Router navigation.
Installation
npx skills add mindrally/skills --skill expo-react-native-javascript-best-practices
Similar popular skills
Related neighbors and high-traction skills in the same topics — useful to compare before installing.
Provides React Native performance optimization guidelines for FPS, TTI, bundle size, memory lea…
25K installsFramework (OSS). Integrate Expo and React Native into an existing native iOS or Android app. Us…
18.7K installsBest practices for writing JavaScript/TypeScript tests using Jest, including mocking strategies…
12.6K installsRivetKit JavaScript client guidance. Use for browser, Node.js, or Bun clients that connect to R…
7.6K installsAlso in this package
Other skills from mindrally/skills · top by installs.
npx skills add mindrally/skills
More details
Agent compatibility
Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.
Also listed on
Alternate registries and mirrors of this skill.
Repository health
main
Package contents
Files included with this skill beyond the listing page.
-
skill md
SKILL.md2,298 B -
docs
SUMMARY.md187 B
History
- First seen on skills.sh
- First recorded snapshot · 726 installs
SKILL.md
Expo React Native JavaScript Best Practices
Guidelines for building high-quality Expo React Native applications with JavaScript, focusing on clean code, modularity, and performance.
Code Style and Structure
- Clean, Readable Code: Ensure your code is easy to read and understand. Use descriptive names for variables and functions.
- Functional Components: Prefer functional components with hooks (useState, useEffect) over class components
- Component Modularity: Break components into smaller, reusable pieces with single responsibility
- Feature-Based Organization: Group related components, hooks, and styles into feature directories (e.g., user-profile, chat-screen)
Naming Conventions
- Variables and Functions: Use camelCase (e.g.,
isFetchingData,handleUserInput) - Components: Use PascalCase (e.g.,
UserProfile,ChatScreen) - Directories: Use lowercase hyphenated names (e.g.,
user-profile,chat-screen)
JavaScript Usage
- Minimize global variables to prevent unintended side effects
- Leverage ES6+ features like arrow functions, destructuring, and template literals to write concise code
- Use PropTypes for type checking if not using TypeScript
Performance Optimization
- Avoid unnecessary state updates; use local state when needed
- Apply
React.memo()to prevent unnecessary re-renders - Optimize FlatList with the following props:
- removeClippedSubviews - maxToRenderPerBatch - windowSize
- Avoid anonymous functions in
renderItemor event handlers
UI and Styling
- Use
StyleSheet.create()for consistent styling or Styled Components for dynamic styles - Ensure responsive design across screen sizes and orientations
- Use optimized image libraries like
react-native-fast-image
Best Practices
- Follow React Native's threading model for smooth UI performance
- Use Expo's EAS Build and OTA updates for deployment
- Expo Router: Use Expo Router for file-based routing in your React Native app. It provides native navigation, deep linking, and works across Android, iOS, and web