Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build a notes (or tasks) app with Expo. Compose the UI from native components (View/Text/TextInput/Pressable), style it with StyleSheet + flexbox (remember flexDirection defaults to column), render the notes with a FlatList (stable keyExtractor — not .map in a ScrollView), add notes via a controlled TextInput, toggle/delete with Pressable, and PERSIST them with AsyncStorage so they survive a restart. Run it on a simulator or your device. All visible text must be inside <Text>.
Correct use of View/Text/TextInput/Pressable and StyleSheet/flexbox; all text in <Text>; no web/HTML/CSS assumptions.
A FlatList with data/renderItem/keyExtractor used for the notes (not a mapped ScrollView).
Notes persist across app restarts via AsyncStorage (correctly async); add/toggle/delete all work.
Builds and runs on a simulator/device; no red-screen errors; documented setup.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A mobile notes app ## Goal Build a notes (or tasks) app with Expo. Compose the UI from native components (View/Text/TextInput/Pressable), style it with StyleSheet + flexbox (remember flexDirection defaults to column), render the notes with a FlatList (stable keyExtractor — not .map in a ScrollView), add notes via a controlled TextInput, toggle/delete with Pressable, and PERSIST them with AsyncStorage so they survive a restart. Run it on a simulator or your device. All visible text must be inside <Text>. ## Acceptance criteria - [ ] Native components & styling: Correct use of View/Text/TextInput/Pressable and StyleSheet/flexbox; all text in <Text>; no web/HTML/CSS assumptions. - [ ] Lists: A FlatList with data/renderItem/keyExtractor used for the notes (not a mapped ScrollView). - [ ] Persistence: Notes persist across app restarts via AsyncStorage (correctly async); add/toggle/delete all work. - [ ] Runs: Builds and runs on a simulator/device; no red-screen errors; documented setup. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.