feat(v5): scaffold expo app#2203
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub. 1 Skipped Deployment
|
How to use the Graphite Merge QueueAdd the label graphite-merge-queue to this PR to add it to the merge queue. You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. |
🌿 Documentation Preview
|
There was a problem hiding this comment.
Pull Request Overview
This PR scaffolds a new React Native Expo example application (v5) for demonstrating Smart Wallets functionality. The example app implements a modern Expo application structure with tab-based navigation, theme support (light/dark modes), and integrates wagmi and react-query for blockchain interactions.
Key Changes
- Scaffolded new
rn-expo-example-v5example app with Expo Router and React Native 0.81.5 - Implemented theming system with light/dark mode support and custom color schemes
- Configured project with TypeScript, ESLint, and Babel for Expo compatibility
Reviewed Changes
Copilot reviewed 26 out of 37 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| package.json | Removed React Native dependencies from root package.json (moved to example) |
| examples/rn-expo-example-v5/package.json | Added new example package with Expo, React Native, wagmi, and viem dependencies |
| examples/rn-expo-example-v5/tsconfig.json | Configured TypeScript with strict mode and path aliases |
| examples/rn-expo-example-v5/app.json | Defined Expo app configuration with icons, splash screens, and experimental features |
| examples/rn-expo-example-v5/babel.config.js | Configured Babel with Expo preset and reanimated plugin |
| examples/rn-expo-example-v5/eslint.config.js | Set up ESLint with Expo configuration |
| examples/rn-expo-example-v5/config.ts | Created wagmi configuration for Arbitrum Sepolia with multiInjectedProviderDiscovery disabled |
| examples/rn-expo-example-v5/constants/theme.ts | Defined color schemes and font configurations for theming |
| examples/rn-expo-example-v5/hooks/*.ts | Implemented color scheme hooks with web-specific hydration logic |
| examples/rn-expo-example-v5/components/*.tsx | Created reusable UI components (ThemedText, ThemedView, IconSymbol, etc.) |
| examples/rn-expo-example-v5/app/_layout.tsx | Set up root layout with wagmi, react-query, and theme providers |
| examples/rn-expo-example-v5/app/(tabs)/*.tsx | Implemented tab navigation with home screen placeholder |
| .eslintignore | Added new example to ESLint configuration |
|
Cancelled for now. |
Pull Request Checklist
yarn test)sitefolder, and guidelines for updating/adding docs can be found in the contribution guide)feat!: breaking change)yarn lint:check) and fix any issues? (yarn lint:write)PR-Codex overview
This PR introduces various enhancements and new features to the
rn-expo-example-v5project, including new components, hooks, and configuration files, as well as updates to existing files for better functionality and organization.Detailed summary
assets/images.useColorSchemehook inhooks/use-color-scheme.ts.babel.config.jswith presets and plugins.tsconfig.jsonfor TypeScript settings..eslintrcandeslint.config.js.ThemedViewandThemedTextcomponents for consistent theming.HapticTabfor haptic feedback on tab presses.ExternalLinkcomponent for in-app browser functionality.IconSymbolcomponent for consistent icon usage across platforms.app.jsonfor application settings and splash screen configuration.HomeScreenwithParallaxScrollViewfor improved UI experience.