stack-expo · git:20261015.86234b5 · 2026-10-15 · sha256 99a4ce21745a5d55
stack-expo git:20261015.86234b5A
Immutable. This exact content never changes and is served at /api/v1/blob/99a4ce21745a5d55.
--- name: stack-expo description: Conventions for the Expo / React Native stack (Expo Router screens per task, components/<f>, lib owners). Use when adding a screen, component, navigation or API call in this app. --- # Expo stack Setup: `.uak/stacks/expo/STACK.md`. | Rule | Why | |---|---| | One task = one route file or folder in `app/` + `components/<f>/`; `_layout.tsx` belongs to setup | disjoint claims | | Native modules only with `npx expo install` and through the owner of `package.json`/`app.json` | config plugins change the build | | API calls through `lib/api.ts` with a timeout and a labeled mock (`demo_data: true`) | the demo survives no network at the venue | | Test on web first (`expo export --platform web` in smoke), then on one real device before the demo | the gate has no simulator | | Every list has loading, empty and error states; tap targets at least 44 pt | reviewers check them | ```bash bash .uak/bin/q npx tsc --noEmit ```