Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build a multi-screen app (e.g. a browser for movies, recipes, or GitHub repos) using React Navigation: a bottom-tab navigator with a native stack inside one tab, a list screen and a DETAIL screen reached by navigating with route params. Fetch data from a public API with loading/error states and handle offline/flaky connectivity gracefully (cache + a retry). Manage shared state appropriately, use SafeAreaView, and add at least one platform-specific touch (Platform.select or a .ios/.android file).
React Navigation set up with tabs + a stack; navigating to a detail screen with params works; headers sensible.
Fetches from an API with loading/error states; degrades gracefully when offline/slow (cache or retry).
Shared state scoped sensibly (hooks/Context/store); clean component structure; SafeArea respected.
At least one platform-specific adaptation; UI feels native on both iOS and Android.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A multi-screen app with navigation & live data ## Goal Build a multi-screen app (e.g. a browser for movies, recipes, or GitHub repos) using React Navigation: a bottom-tab navigator with a native stack inside one tab, a list screen and a DETAIL screen reached by navigating with route params. Fetch data from a public API with loading/error states and handle offline/flaky connectivity gracefully (cache + a retry). Manage shared state appropriately, use SafeAreaView, and add at least one platform-specific touch (Platform.select or a .ios/.android file). ## Acceptance criteria - [ ] Navigation: React Navigation set up with tabs + a stack; navigating to a detail screen with params works; headers sensible. - [ ] Data & offline: Fetches from an API with loading/error states; degrades gracefully when offline/slow (cache or retry). - [ ] State & structure: Shared state scoped sensibly (hooks/Context/store); clean component structure; SafeArea respected. - [ ] Platform polish: At least one platform-specific adaptation; UI feels native on both iOS and Android. ## 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.