Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use when implementing or debugging ANY network request, API call, or data fetching. Covers fetch API, React Query, SWR, error handling, caching, offline support, and Expo Router data loaders (`useLoaderData`).
.claude/skills/sickn33-native-data-fetching/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 107% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 139% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 61% | 0% |
| case-02 | ✓→✓ | = Same ✓ | 169% | 0% |
| case-03 | ✓→✓ | = Same ✓ | 700% | 0% |
You MUST use this skill for ANY networking work including API requests, data fetching, caching, or network debugging.
Read the detailed guide before executing this skill. It retains the complete procedure and reference material. Treat its safety, prerequisites, and validation requirements as mandatory. For focused work, load the relevant sections; for end-to-end work, read the guide completely.
Use this skill when:
useLoaderData, web SDK 55+)User: "How do I make API calls in React Native?" -> Use fetch, wrap with error handling
User: "Should I use React Query or SWR?" -> React Query for complex apps, SWR for simpler needs
User: "My app needs to work offline" -> Use NetInfo for status, React Query persistence for caching
User: "How do I handle authentication tokens?" -> Store in expo-secure-store, implement refresh flow
User: "API calls are slow" -> Check caching strategy, use React Query staleTime User: "How do I configure different API URLs for dev and prod?" -> Use EXPOPUBLIC env vars with .env.development and .env.production files User: "Where should I put my API key?" -> Client-safe keys: EXPOPUBLIC in .env. Secret keys: non-prefixed env vars in API routes only
User: "How do I load data for a page in Expo Router?" -> See references/expo-router-loaders.md for route-level loaders (web, SDK 55+). For native, use React Query or fetch.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 12,350 | 7,973 | -35% | 1 | 1 | 0% | 2,296 | 4,758 | +107% | 0 | 0 | — |
case-02 | pass→pass | 9,130 | 6,205 | -32% | 1 | 1 | 0% | 1,684 | 4,522 | +169% | 0 | 0 | — |
case-03 | pass→pass | 2,857 | 2,785 | -3% | 1 | 1 | 0% | 475 | 3,802 | +700% | 0 | 0 | — |
case-04 | pass→pass | 9,447 | 9,486 | +0% | 1 | 1 | 0% | 2,001 | 5,240 | +162% | 0 | 0 | — |
case-05 | pass→pass | 13,041 | 8,622 | -34% | 1 | 1 | 0% | 2,685 | 4,935 | +84% | 0 | 0 | — |
case-06 | pass→pass | 12,518 | 8,396 | -33% | 1 | 1 | 0% | 2,487 | 4,971 | +100% | 0 | 0 | — |
case-07 | pass→pass | 12,466 | 5,512 | -56% | 1 | 1 | 0% | 2,352 | 4,300 | +83% | 0 | 0 | — |
case-08 | pass→pass | 5,898 | 4,387 | -26% | 1 | 1 | 0% | 1,197 | 4,200 | +251% | 0 | 0 | — |
case-09 | pass→pass | 9,922 | 5,526 | -44% | 1 | 1 | 0% | 1,933 | 4,231 | +119% | 0 | 0 | — |
case-10 | pass→pass | 10,233 | 6,101 | -40% | 1 | 1 | 0% | 2,048 | 4,411 | +115% | 0 | 0 | — |
case-11 | fail→pass | 9,015 | 5,318 | -41% | 1 | 1 | 0% | 1,849 | 4,420 | +139% | 0 | 0 | — |
case-12 | pass→pass | 10,396 | 5,634 | -46% | 1 | 1 | 0% | 1,762 | 4,237 | +140% | 0 | 0 | — |
case-13 | pass→pass | 8,149 | 6,358 | -22% | 1 | 1 | 0% | 1,573 | 4,448 | +183% | 0 | 0 | — |
case-14 | fail→pass | 14,195 | 4,979 | -65% | 1 | 1 | 0% | 2,619 | 4,215 | +61% | 0 | 0 | — |
case-15 | pass→pass | 14,354 | 10,084 | -30% | 1 | 1 | 0% | 2,969 | 5,290 | +78% | 0 | 0 | — |
case-16 | pass→pass | 9,676 | 5,201 | -46% | 1 | 1 | 0% | 1,907 | 4,296 | +125% | 0 | 0 | — |
case-17 | pass→pass | 3,516 | 4,705 | +34% | 1 | 1 | 0% | 623 | 3,846 | +517% | 0 | 0 | — |
case-18 | pass→pass | 13,291 | 10,980 | -17% | 1 | 1 | 0% | 2,794 | 5,706 | +104% | 0 | 0 | — |
case-19 | pass→pass | 5,630 | 4,502 | -20% | 1 | 1 | 0% | 1,075 | 4,249 | +295% | 0 | 0 | — |
case-20 | pass→pass | 10,234 | 6,312 | -38% | 1 | 1 | 0% | 1,762 | 4,464 | +153% | 0 | 0 | — |
case-21 | pass→pass | 16,279 | 9,790 | -40% | 1 | 1 | 0% | 3,376 | 5,276 | +56% | 0 | 0 | — |
case-22 | pass→pass | 10,455 | 7,146 | -32% | 1 | 1 | 0% | 2,041 | 4,671 | +129% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +14 percentage points is the difference between those two pass rates over the 22 comparable cases.
The publisher has shipped newer versions since this run, so these numbers describe v1, not the version currently listed.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.