PluginBench
Rule

react native expo router typescript windows

via PatrickJS/awesome-cursorrules

React Native Expo Router with TypeScript and Windows development setup.

What is react native expo router typescript windows?

This rule configures best practices for building React Native apps with Expo Router, TypeScript, and Windows development environments. Use it when starting or maintaining Expo projects that require type-safe navigation, NativeWind styling, and PowerShell-based workflows.

  • Enforces functional components with hooks and TypeScript for type safety
  • Implements file-based routing using Expo Router with recommended folder structure
  • Configures NativeWind and Tailwind CSS with specific version compatibility (nativewind@2.0.11, tailwindcss@3.3.2)
  • Provides Babel configuration for NativeWind including proper plugin ordering
  • Guides Windows PowerShell workflows for package management and file operations
  • Recommends Expo SDK features including SecureStore, push notifications, OTA updates, and offline support

Applies to

File patterns this rule matches.

**/*
Rule definition (reference)

Source of truth, from the repository.

// React Native Expo .cursorrules

// React Native Expo Best Practices

const reactNativeExpoBestPractices = [ "Use functional components with hooks.", "Leverage Expo SDK features and APIs.", "Implement navigation using Expo Router.", "Manage assets with Expo's asset system for images and fonts.", "Ensure robust error handling and crash reporting.", "Utilize Expo's push notification system.", "Adopt TypeScript for type safety.", "Apply consistent styling using StyleSheet.", "Incorporate Expo's vector icons.", "Secure sensitive data with Expo's SecureStore.", "Implement proper offline support.", "Optimize performance following React Native best practices.", "Deploy updates using Expo's OTA mechanism.", "Style components using NativeWind.", ];

// Folder Structure

const folderStructure = assets/ src/ components/ screens/ navigation/ hooks/ utils/ app/ _layout.tsx index.tsx App.js app.json;

// Package Version Compatibility Notes

const packageCompatibilityNotes = [ "NativeWind and Tailwind CSS compatibility:", "- Use nativewind@2.0.11 with tailwindcss@3.3.2.", "- Higher versions may cause 'process(css).then(cb)' errors.", "- If errors occur, remove both packages and reinstall specific versions:", " npm remove nativewind tailwindcss", " npm install nativewind@2.0.11 tailwindcss@3.3.2",

"Babel configuration for NativeWind:", "- Include 'nativewind/babel' in the plugins array.", "- Avoid using jsxImportSource in presets.", "- Ensure 'react-native-reanimated/plugin' follows 'nativewind/babel'." ];

// Additional Instructions

const additionalInstructions = [ "Use PowerShell for terminal commands.", "Before installing a new package, check if it's already installed:", " Get-ChildItem -Recurse -Filter package-name", "If installed, upgrade using:", " expo upgrade <package-name>", "or", " npm install <package-name>", "if not supported by Expo.", "Use PowerShell commands to manage the project, e.g., moving and renaming files:", " Move-Item -Path .\old\path\file.txt -Destination .\new\path\newname.txt", "If unsure about the current structure or details, use PowerShell to list out necessary information:", " Get-ChildItem -Recurse", "Utilize official Expo libraries and upgrade them using Expo's commands.", "Avoid deleting existing functionality or files without a valid reason.", "Follow the recommended folder structure and maintain organized code for scalability and readability.", "Implement navigation using Expo Router for clean and declarative routing." ];

Related rules

Expert React & Next.js App Router development with clear, production-ready code.

**/*
41k
via PatrickJS/awesome-cursorrules

React Query integration patterns and best practices for React development.

**/*
41k
via PatrickJS/awesome-cursorrules

React + Redux + TypeScript integration with hooks, Redux Toolkit, and type-safe patterns.

**/*
41k
via PatrickJS/awesome-cursorrules

React Router v7 framework mode patterns for loaders, actions, route modules, and progressive enhancement.

["app/routes/**/*" +6
41k
via PatrickJS/awesome-cursorrules

React development with Styled Components integration and best practices.

**/*
41k
via PatrickJS/awesome-cursorrules

Zero-loading-spinner React SPA with TanStack Router v1 + TanStack Query v5 for type-safe URLs and cache-first data.

["src/routes/**/*" +3
41k
via PatrickJS/awesome-cursorrules