Add ios-sticky-header skill#65
Open
ide wants to merge 1 commit into
Open
Conversation
Documents the pattern for floating an overlay (progress pill, filter chips, segmented control, search field) under an iOS large-title nav bar in Expo Router: render the overlay as an absolutely-positioned sibling of a `ScrollView` that's a direct child of the screen, and drive `top = max(insets.top + 44, -scrollY)` from a Reanimated `useAnimatedScrollHandler` so the overlay tracks the bar's bottom through its iOS-native shrink animation. Calls out the load-bearing gotcha (wrapping the `ScrollView` in another `<View>` breaks the `UINavigationController` linkage and the title stops collapsing on scroll) plus the dangerous `Stack.Screen` options to leave alone. Stress-tested with three independent agents (no project context) implementing three different overlays — all produced code that satisfies the invariants the skill claims to teach.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
I was working on a demo app and wanted to implement a sticky header on iOS that tracks the native title element. The LLM didn't generate a working solution right away. This skill is to make it much easier to generate code for sticky headers with Expo Router.
See the view with the 38 / 38 counter and progress bar for what I mean:
header.movie.mp4
How
I asked the LLM to make the skill and then I read it over. For stress-testing I used three independent agents (no project context) implementing three different overlays, and all produced code that satisfies the invariants the skill aims to teach.