build_and_development_commands:
- npm install # Install dependencies
- npx expo start # Start Expo development server
- npx expo run:android # Run app on Android device/emulator
- npx expo run:ios # Run app on iOS simulator (Mac only)
- npx expo build:android # Build Android APK or AAB
- npx expo build:ios # Build iOS app (requires Apple Developer account)
- npm run lint # Check for linting issues
- npm run format # Auto-format code with Prettier
testing_guidelines:
- Use jest for unit and component testing
- Use @testing-library/react-native for rendering and interaction tests
- Run tests with `npm run test`
- Mock async storage, network requests, and native modules when necessary
- Ensure all logic-heavy components/functions have test coverage
code_style_and_guidelines:
- Use TypeScript for all components and modules
- Use functional components and React Hooks
- Follow Prettier and ESLint rules (`npm run lint && npm run format`)
- Folder structure:
- /components
- /screens
- /hooks
- /utils
- /assets
- /navigation
- Avoid anonymous functions in JSX
- Use environment variables securely via expo-constants or dotenv setup with expo-env
documentation_guidelines:
- All exported functions/components should use JSDoc
- Update the root README.md after major changes
- Document any third-party API integrations
- Include setup instructions, .env requirements, and build commands
- Include screen recordings or screenshots for key UI features