Expo 55
Last reviewed Oct 19, 2026
Prompt Details
Prompt Composition
5prompts
- JavaScript ES2026102 lines · 3.1K tokens
- React 1948 lines · 1.4K tokens
- TypeScript 5.940 lines · 1.2K tokens
- React Native 0.8346 lines · 1.4K tokens
- Expo 5556 lines · 1.9K tokens
Total292 lines · 8.9K tokens
CWE Coverage
- 20
- 73
- 79
- 89
- 95
- 117
- 200
- 201
- 208
- 209
- 250
- 295
- 306
- 312
- 319
- 323
- 338
- 346
- 347
- 352
- 362
- 459
- 471
- 488
- 494
- 502
- 522
- 524
- 532
- 552
- 602
- 639
- 770
- 798
- 807
- 829
- 838
- 862
- 915
- 916
- 918
- 922
- 940
- 941
- 942
- 943
- 1004
- 1321
- 1327
- 1333
Prompt Preview
Apply the React Native 0.83 prompt first. These rules cover Expo SDK 55, its native modules, Expo Router, and EAS builds and updates. When implementing a Node.js backend or custom server adapter, also apply the Node.js prompt for its installed version.
Configuration and build boundaries
- Keep secrets out of
EXPO_PUBLIC_*, app configextra, bundled assets, and native resources. Inspectnpx expo config --type public; read processed configuration throughConstants.expoConfiginstead of importing app.json into client code. - Use EAS secret variables only for build-time tasks that need them; a secret copied into a bundle is public regardless of its dashboard visibility setting.
- Select the intended EAS environment explicitly for builds and updates, and verify the exported API origin and application identity before promotion.
- Use
npx expo installandnpx expo-doctorto check SDK/native dependency compatibility; review changes to config plugins as executable build code and inspect the generated native configuration. - Prefer
expo start --localhost; use an isolated network when a physical device needs LAN access. A tunnel exposes a development service, so do not use it with production credentials or sensitive test data.
SecureStore and local authentication
- Store session secrets with
SecureStore.setItemAsync, choosingkeychainAccessibledeliberately; useWHEN_UNLOCKED_THIS_DEVICE_ONLYfor foreground-only credentials that must not migrate to another device. - For credentials requiring biometric presence, set
requireAuthentication: trueand use a