{"repo":"JassiSingh08/react-native-collapsible-tab","free":true,"listed":false,"github":"https://github.com/JassiSingh08/react-native-collapsible-tab","clone":"git clone https://github.com/JassiSingh08/react-native-collapsible-tab.git","description":"Collapsible header tab view for React Native with per-tab scroll memory, a jump-free header, and adapters for FlatList, ScrollView, SectionList, FlashList v2 & LegendList.","language":"TypeScript","stars":151,"topics":["android","collapsible","collapsible-header","expo","ios","react-native","tab-view","tabs","typescript"],"license":"MIT","category":"mobile-apps","readme_excerpt":"react-native-collapsible-tab Collapsible header tab view for React Native — with per-tab scroll memory , a jump-free header , and first-class adapters for FlatList, ScrollView, SectionList, FlashList v2 and LegendList . Demo Same gesture, same frame — iOS and Android side by side. https://github.com/user-attachments/assets/f7fdfd2b-8899-4192-9343-120e3c7b505b Built on react-native-reanimated , react-native-gesture-handler and react-native-pager-view . All animation runs on the UI thread. Works with Reanimated 3 and 4 , old and New Architecture (FlashList adapter requires New Architecture), and Expo (including Expo Go). --- Why another collapsible tab view? The category's classic bugs come from one architectural decision in existing libraries: tying the header position directly to tab scroll offsets, then force-scrolling every tab to keep them in sync. This library decouples them: - The header position is its own animated value , driven only by scroll deltas of the active tab. Tab switches never move the header — no flicker, no jump, no ghost blank space. - Each tab keeps its own scroll offset (keyed by tab name). Switching back to a tab restores exactly where you were. Only the incoming tab is adjusted, only when needed to prevent a gap, and on the UI thread before the page becomes active. - The header is drag-to-scrollable and its buttons work. A pan gesture on the header drives the active list (including release momentum) but only activates after 10px of vertical movement, ","default_branch":null,"files":null,"tree":[],"storefront":"/r/JassiSingh08","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/JassiSingh08/react-native-collapsible-tab/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}