CodeGen and Typed Scaffolding in the New Architecture
WHAT IT TESTS: CodeGen's purpose. OUTLINE: it reads typed JS specs and generates native interfaces at build time so JS and native agree on types, avoiding runtime checks and giving compile-time safety.
How Fabric Improves Rendering Over the Old UIManager
WHAT IT TESTS: Fabric rendering model. OUTLINE: a C++ shadow tree shared across threads, JSI-based synchronous access, immutable tree commits, and support for concurrent React features.
Why the New Architecture Replaced the Bridge
WHAT IT TESTS: motivation for the New Architecture. OUTLINE: the old bridge was async, serialized to JSON, and a single batched channel causing latency; JSI replaces it with direct synchronous C++ interop.
ViewManager and Exposing Native Component Props
WHAT IT TESTS: native UI component bridging. OUTLINE: the ViewManager creates the native view and maps it to a JS component; you expose props with a prop-setter that receives the value when the prop changes.
Returning a Promise from a Native Module Method
WHAT IT TESTS: native module async bridging. OUTLINE: the exported method takes resolve and reject as its last parameters; do the async work off the main thread, then settle exactly once with a result or an error.
Draggable Snap-Back Card with Gesture Handler and Reanimated
WHAT IT TESTS: gesture-driven animation. OUTLINE: shared values track offset, a Pan gesture updates them on the UI thread, an animated style applies translation, onEnd springs back to zero.
Fetching REST Data with Loading and Error State
WHAT IT TESTS: data fetching with state. OUTLINE: track loading, data, and error; fetch in an effect, check response.ok, parse JSON, handle catch and finally. RED FLAG: ignoring non-2xx responses or leaving loading true on error.
Why react-native-gesture-handler Replaces the Responder System
WHAT IT TESTS: gesture handling limits. OUTLINE: the JS responder system runs on the JS thread so gestures lag under load; gesture-handler runs recognition natively for smooth, reliable gestures.
Debouncing a Search TextInput with Hooks
WHAT IT TESTS: debounce with hooks. OUTLINE: keep input in state, in an effect set a timer that fires the search after a delay, clear the timer on each change so only the final pause triggers the call.
Responsive Layouts with Core React Native APIs
WHAT IT TESTS: responsive design without libraries. OUTLINE: lean on flexbox, percentage sizing, useWindowDimensions, SafeAreaView, and Platform; recompute on dimension change. RED FLAG: hardcoding pixel widths or reading Dimensions once.
JSI, Fabric, and TurboModules in the New Architecture
WHAT IT TESTS: New Architecture pillars. OUTLINE: JSI gives JS direct synchronous access to native via C++, Fabric is the new renderer, TurboModules lazy-load native modules. RED FLAG: thinking it still routes everything through the async JSON bridge.
StyleSheet.create and Inline Style Tradeoffs
WHAT IT TESTS: RN styling model. OUTLINE: styles are JS objects of subset-CSS properties; StyleSheet.create validates them and yields stable references, while inline objects allocate each render. RED FLAG: claiming RN uses real CSS or cascading.
Limits of OTA Updates and Runtime Versions
WHAT IT TESTS: OTA boundaries. OUTLINE: OTA ships only JS and assets; native changes need a store build; runtime versions gate compatibility. RED FLAG: assuming any change can ship OTA or ignoring runtime version mismatches.
Optimizing Slow iOS CI Build Times
WHAT IT TESTS: CI build optimization. OUTLINE: profile the build, cache CocoaPods and DerivedData, use prebuilt frameworks, parallelize, scope to changed work. RED FLAG: buying faster runners without measuring the bottleneck first.
Designing a Fastfile for Versioning, match, and Uploads
WHAT IT TESTS: Fastlane lane design. OUTLINE: lanes bump versions, run match for signing, build with gym and gradle, upload via pilot and supply; secrets come from CI env or a vault. RED FLAG: committing the match passphrase or keys to the repo.
CI/CD Pipeline for React Native to TestFlight and Play
WHAT IT TESTS: mobile CI/CD design. OUTLINE: a triggered workflow installs deps, builds signed artifacts on macOS and Linux runners, uploads via Fastlane to TestFlight and the Play internal track. RED FLAG: storing signing secrets in the repo.
Over-the-Air Updates for JavaScript-Only Fixes
WHAT IT TESTS: OTA update mechanics. OUTLINE: ship a new JS bundle the app downloads at runtime and applies on next launch, with no store review. RED FLAG: thinking OTA can ship native code changes or bypass store policy.
Android App Bundles versus Universal APKs
WHAT IT TESTS: Play distribution format. OUTLINE: an AAB is an upload format; Play generates per-device APKs via dynamic delivery, shrinking download size. RED FLAG: thinking an AAB installs directly on a device like an APK.
Managing Per-Environment Configuration in React Native
WHAT IT TESTS: environment configuration strategy. OUTLINE: use per-environment env files plus build flavors or schemes, inject at build time, keep secrets off the device. RED FLAG: hardcoding endpoints or branching on a runtime flag inside one bundle.
iOS Provisioning Profiles and Signing Certificates
WHAT IT TESTS: iOS code-signing model. OUTLINE: the certificate proves developer identity, the App ID names the app, the profile binds certificate, App ID, and devices. RED FLAG: confusing the certificate with the profile or treating them as interchangeable.