1.4 KiB
Learned Facts
This file contains facts about the codebase learned from past sessions. These are things Claude got wrong or needed clarification on, stored here to prevent the same mistakes in future sessions.
This file is auto-imported into CLAUDE.md and loaded at the start of each session.
Facts
-
Native bottom tabs + useRouter conflict: When using
@bottom-tabs/react-navigationwith Expo Router, avoid using theuseRouter()hook in components rendered at the provider level (outside the tab navigator). The hook subscribes to navigation state changes and can cause unexpected tab switches. Use the staticrouterimport fromexpo-routerinstead. (2025-01-09) -
IntroSheet rendering location: The
IntroSheetcomponent is rendered insideIntroSheetProviderwhich wraps the entire navigation stack. Any hooks in IntroSheet that interact with navigation state can affect the native bottom tabs. (2025-01-09) -
Intro modal trigger location: The intro modal trigger logic should be in the
Home.tsxcomponent, not in the tabs_layout.tsx. Triggering modals from tab layout can interfere with native bottom tabs navigation. (2025-01-09) -
Tab folder naming: The tab folders use underscore prefix naming like
(_home)instead of just(home)based on the project's file structure conventions. (2025-01-09)